AangularJS相关术语

1.   数据模型对象(model object)是指$scope对象。$scope对象又是一个简单的JavaScript对象,其中的属性可以被视图访问,也可以同控制器进行交互。 

2.  $scope对象是定义应用业务逻辑、控制器方法和视图属性的地方;将应用的业务逻辑都放在控制器中,将相关的数据都放在控制器的作用于中,是非常完美的架构;

3. 作用域:提供观察者以监视数据模型的变化;可以将数据模型的变化通知给整个应用,甚至是系统外的组件,可以进行嵌套,隔离业务功能和数据,给表达式提供运算时所需的执行环境;

4. $scope对象的生命周期处理有四个不同的阶段:

  • 创建:在创建控制器或指令时,angular会用$injector创建一个新的作用域,并在这个新建的控制器或指令运行时将作用域传递进去;
  • 链接:当angular运行时,所有的$scope对象都会附加或者链接到视图中,包括$scope对象的函数;这些函数($watch函数)将会注册当angular应用上下文发生变化时需要运行的函数; 
  • 更新:当事件循环运行时,它通常执行顶层对象($rootScope),每个子作用域都执行自己的脏值检测,每个监控函数都会检查变化,如果检测到任意变化,$scope对象就会触发指定的回调函数;
  • 销毁:当一个$scope在视图中不在需要时,这个作用域将会清理和销毁自己;   

5. 控制器的作用: 控制器在angularJS中的作用是增强视图;用它来给作用域对象设置初始状态,添加自定义行为;

6. 设计良好的应用会将复杂的逻辑放到指令和服务中,通过使用指令和服务,我们可以将控制器重构成一个轻量和易于维护的形式;

7. angular通过$parse这个 内部表达式来进行表达式的运算;(手动解析表达式)

8. 在字符串模板中做差值操作,需要在你的对象中注入$interpolate服务;$interpolate服务时一个可以接受三个参数的函数:

       text(字符串):一个包含字符插值标记的字符串;

       mustHaveExpression(布尔型):设置为true,当传入的字符串中不含有表达式时会返回null;

       trustedContext(字符串):angular会对已经进行过字符串差值操作的字符串通过$sec.getTursted()方法进行严格的上下文转义;

    它返回一个函数,用来在特定的上下文中运算表达式;

9. 若要子文中使用不同于{{ }}的符号来表示表达式的开始和结束,可以在$interpolateProvider服务中配置;

     angular.module("mainApp ",[]).config(["$interpolateProvider",function($interpolatProvider){

        $interpolateProvider.startSymbol('_ _');    //修改标识符开始符号

                       $interpolateProvider.endSymbol('_ _');     //修改标识符结束符号

   }]);

 

posted @ 2017-05-22 10:03  三石!  阅读(114)  评论(0编辑  收藏  举报