
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