AngularJS标准Web业务流程开发框架-4.AngularJS四大模块之一:Controller
程序员文章站
2022-06-30 09:09:19
一、Controller的创建 1.name:控制器的名称(建议参考Java包的命名规范:点的方式进行命名); 2.function:回调函数的构造方法(实际是对象,主要考虑到类的调用); 3.$scope相当于mvvm模式的viewmodel,支持变量、函数; 3.1.$ccope的由来: $in ......
一、controller的创建
angular.controller("name",funtion($scope){ })
1.name:控制器的名称(建议参考java包的命名规范:点的方式进行命名);
2.function:回调函数的构造方法(实际是对象,主要考虑到类的调用);
3.$scope相当于mvvm模式的viewmodel,支持变量、函数;
3.1.$ccope的由来:
$injector注射完成后创建的$rootscope(根作用域root viewmodel,$scope的父类)
3.2.$scope的作用
3.1.1.视图和控制器的数据传递桥梁
3.1.2.封装脏值检查(dirtychecking),触发脏值检查的条件:
1)$scope.$dirty(暴力脏值检查,慎用)
2)$scope.$apply(基于$dirty的封装)
3)$开头的服务调用
4)ng开头的指令触发
4.控制器的创建支持链式写法;
二、嵌套controller值传递
1.内层控制器的值会覆盖外层控制器的值,内层控制器不存在变量的值,外层控制器的值会作用于内层控制器的值;
2.内层控制器获取外部控制器的值通过($scope.$parent)的方式获取,多层嵌套则层层上抛;
三、平行controller值共享
通过$rootscope进行传值