
AngularJS расширяет HTML с новыми атрибутами.
AngularJS идеально подходит для одностраничного приложения.
AngularJS легко учить.
Узнайте AngularJS сейчас!
Angular 2
Туториал по AngularJS
Этот учебник разработан специально, чтобы помочь вам как можно быстрее и эффективнее освоить AngularJS.
Первое, вы узнаете основы AngularJS: директивы, выражения, фильтры, модули и контроллеры.
Потом вы узнаете, все, что нужно о AngularJS,а именно: События, DOM формы (ввод, валидация), запросы и многое другое.
Что вы должны знать перед изучением?
Перед тем как начать учить AngularJS вы должны понимать:
- HTML
- CSS
- JavaScript
Ccылки на уроки:
- Введение в AngularJS
- Установка и тестовое приложение
- MVC архитектура
- Первое приложение
- Примеры использования директив
- Выражения
- Контроллеры
- Фильтры
- Таблицы
- HTML DOM
- Модули
- Формы
- Вставки
- Ajax
- Вид
- Скоуп
- Сервисы
- Внедрение зависимости
- Пользовательские директивы
- Интернализация
Дополнительные cсылки:
Примеры приложений на AngularJS
- AngularJS –
ToDO Лист - AngularJS – Блокнот
- AngularJS – Модальное окно
- AngularJS – Авторизация
- AngularJS – Загрузка файла
<html>
<head>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
</head>
<body ng-app = "myApp">
<div ng-controller = "myCtrl">
<input type = "file" file-model = "myFile"/>
<button ng-click = "uploadFile()">upload me</button>
</div>
<script>
var myApp = angular.module('myApp', []);
myApp.directive('fileModel', ['$parse', function ($parse) {
return {
restrict: 'A',
link: function(scope, element, attrs) {
var model = $parse(attrs.fileModel);
var modelSetter = model.assign;
element.bind('change', function(){
scope.$apply(function(){
modelSetter(scope, element[0].files[0]);
});
});
}
};
}]);
myApp.service('fileUpload', ['$http', function ($http) {
this.uploadFileToUrl = function(file, uploadUrl){
var fd = new FormData();
fd.append('file', file);
$http.post(uploadUrl, fd, {
transformRequest: angular.identity,
headers: {'Content-Type': undefined}
})
.success(function(){
})
.error(function(){
});
}
}]);
myApp.controller('myCtrl', ['$scope', 'fileUpload', function($scope, fileUpload){
$scope.uploadFile = function(){
var file = $scope.myFile;
console.log('file is ' );
console.dir(file);
var uploadUrl = "/fileUpload";
fileUpload.uploadFileToUrl(file, uploadUrl);
};
}]);
</script>
</body>
</html>- AngularJS – Меню
- AngularJS – Форма заказа
- AngularJS – Форма поиска
- AngularJS – Drag & Drop
- AngularJS – Корзина
- AngularJS – Локализация
- AngularJS – Карты
- AngularJS – Погода
- AngularJS – Таймер
- AngularJS – Листовка
- AngularJS – LastFM
Всегда пробуйте код своими руками!
<!DOCTYPE html>
<html>
<script src= "http://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js"></script>
<body>
<div ng-app="">
<p>Input something in the input box:</p>
<p>Name : <input type="text" ng-model="name" placeholder="Enter name here"></p>
<h1>Hello {{name}}</h1>
</div>
</body>
</html>
AngularJS история
AngularJS был первоначально разработан в 2009 году Мишко Хевери и Адамом Абронсом как программное обеспечение позади сервиса хранения JSON-данных, измеряющихся мегабайтами, для облегчения разработки приложений организациями. Сервис располагался на домене «GetAngular.com» и имел нескольких зарегистрированных пользователей, прежде чем они решили отказаться от идеи бизнеса и выпустить Angular как библиотеку с открытым исходным кодом.
Абронс покинул проект, но Хевери, работающий в Google, продолжает развивать и поддерживать библиотеку с другими сотрудниками Google Игорем Минаром и Войта Джином.
Философия Angular
AngularJS спроектирован с убеждением, что декларативное программирование лучше всего подходит для построения пользовательских интерфейсов и описания программных компонентов, в то время как императивное программирование отлично подходит для описания бизнес-логики. Фреймворк адаптирует и расширяет традиционный HTML, чтобы обеспечить двустороннюю привязку данных для динамического контента, что позволяет автоматически синхронизировать модель и представление. В результате AngularJS уменьшает роль DOM-манипуляций и улучшает тестируемость.
Цели разработки
- Отделение DOM-манипуляции от логики приложения, что улучшает тестируемость кода.
- Отношение к тестированию как к важной части разработки. Сложность тестирования напрямую зависит от структурированности кода.
- Разделение клиентской и серверной стороны, что позволяет вести разработку параллельно.
- Проведение разработчика через весь путь создания приложения: от проектирования пользовательского интерфейса, через написание бизнес-логики, к тестированию.
Angular придерживается MVC-шаблона проектирования и поощряет слабую связь между представлением, данными и логикой компонентов. Используя внедрение зависимости, Angular переносит на клиентскую сторону такие классические серверные службы, как видозависимые контроллеры. Следовательно, уменьшается нагрузка на сервер и веб-приложение становится легче.
Материал взят с: https://ru.wikipedia.org/wiki/AngularJS
