1. 双向数据绑定
- View(视图): 页面(标签、指令,表达式)
- Model(模型) :作用域对象(属性、方法)
- 数据绑定: 数据从一个位置自动流向另一个位置
- View–>Model
- Model–>View
- 单向数据绑定: 只支持一个方向
- View–>Model : ng-init
- Model–>View : {{name}}
- 双向数据绑定
- Model<–>View : ng-model
- angular是支持双向数据绑定的
2. 依赖注入
- 依赖的对象被别人(调用者)自动注入进入
- 注入的方式;
- 内部自建:不动态
- 全局变量:污染全局环境
- 形参:这种最好
- angualr就是通过声明式依赖注入, 来得到作用域对象
- 形参名不能随便定义(只是针对当前这种写法)
3. MVC模式
- M: Model, 即模型, 在angular中:
- 为scope
- 储存数据的容器
- 提供操作数据的方法
- V: View, 即视图, 在angular中:
- 为页面
- 包括: html/css/directive/expression
- 显示Model的数据
- 将数据同步到Model
- 与用户交互
- C: Controller, 即控制器, 在angular中:
- 为angular的Controller
- 初始化Model数据
- 为Model添加行为方法
4. MVVM模式
- M: Model, 即数据模型, 在angular中:
- 为scope中的各个数据对象
- V: View, 即视图, 在angular中:
- 为页面
- VM: ViewModel, 即视图模型, 在angular中:
- 为scope对象
- 在angular中controller不再是架构的核心,在MVVM中只是起辅助作用,用来辅助$scope对象,即VM层