什么是AngularJS
AngularJS 是一个 JavaScript 框架,它是一个以 JavaScript 编写的库。
AngularJS 是以一个 JavaScript 文件形式发布的,可通过 script 标签添加到网页中。
AngularJS 使得开发现代的单一页面应用程序(SPAs:Single Page Applications)变得更加容易。
- AngularJS把应用程序数据绑定到HTML元素;
- AngularJS可以克隆和重复HTML元素;
- AngularJS可以隐藏和显示HTML元素;
- AngularJS可以在HTML元素“背后”添加代码;
- AngularJS支持输入验证;
AngularJS 指令
AngularJS指令是以ng作为前缀的HTML属性。
- ng-init指令初始化应用程序变量(ng-init=“firstName=‘John’”)。
- ng-app指令指明了应用,初始化一个 AngularJS 应用程序(ng-app=“xyApp” – var app = angular.module(‘xyApp’, []);)
- ng-controller 指令指明了控制器( ng-controller=“xyCtrl” – app.controller(‘xyCtrl’, [’$scope’,’$http’,function($scope,$http) {
}]); ) - ng-model指令把元素值绑定到应用程序。
- ng-repeat指令会重复一个HTML元素( ng-init="names=[‘Jani’,‘Hege’,‘Kai’] ng-repeat=“x in names”),对于集合中(数组中)的每个项会 克隆一次 HTML 元素。
- 可以使用 .directive 函数来添加自定义的指令,使用驼峰法来命名一个指令, myDirective, 但在使用它时需要以 - 分割, my-directive(app.directive(“myDirective”, function() {
return {
template : "自定义指令! "
};
}); )。 - ng-include指令可以包含HTML文件和AngularJS代码。
AngularJS 表达式
- AngularJS表达式卸载双大括号内:{{ expression }}。
- AngularJS表达式把数据绑定到HTML,这与ng-bind指令有异曲同工之妙。
- AngularJS可以包含文字、运算符和变量(实例 {{ 5 + 5 }} 或 {{ firstName + " " + lastName }})。
- 与JavaScrept表达式不同,AngularJS表达式可以写在HTML中,支持过滤器,不支持条件判断,循环及异常。
AngularJS 应用
- AngularJS模块(Module)定义了AngularJS应用。
- AngularJS控制器(Controller)用于控制AngularJS应用。
- ng-app指令指明了应用, ng-controller 指明了控制器。