AngularJS采用实时模板,任何一个独立视图组件中的值通过双向绑定动态替换。
MVC这种软件架构设计模式将表现从用户交互中分离出来,包括模型、视图、控制器三个部分:
12bet,视图不需要知道如何保存对象,只要知道如何显示它即可。12博体育,数据模型不需要同视图进行交互,只需要包含数据和操作视图的方法。控制器用来存放将二者绑定在一起的业务逻辑。
AngularJS认为某个值变化时,会运行自己的事件循环来进行脏检查。这个事件循环会调用$digest()
循环
12bet,为了表示内部和内置的库函数,Angular使用$
预定义对象。12博体育,只要遇到$
符号都可以只把它看作一个Angular对象。
12bet,数据模型对象(model object)是指$scope
对象。$scope
对象是一个简单的JavaScript对象,其中的属性可以被视图访问,也可以同控制器进行交互。
ng-app
属性声明所有被其包含的内容都属于这个AngularJS应用
ng-controller
声明所有被它包含的元素都属于某个控制器
双向数据绑定(bi-directional)意味着如果视图改变了某个值,数据模型会通过脏检查观察到这个变化,而如果数据模型改变了某个值,视图也会依据变化重新渲染。
在视图中通过对象的属性而非对象本身来进行引用绑定,是Angular中的最佳实践