angular学习笔记2015728
2015-07-29 12:58
453 查看
1.将$parse服务注入到控制器中,然后调用就可以实现手动解析表达式。
2.如果指令使用了transclude参数,那么在控制器(下面马上会介绍)中就无法正常监听数据模型的变化了
3.由于指令可以require其他指令所使用的控制器,因此控制器常被用来放置在多个指令间共享的动作。
如果我们希望将当前指令的API暴露给其他指令使用,可以使用controller参数,否则可以
使用link来构造当前指令元素的功能性。如果我们使用了scope.$watch()或者想要与DOM元素
做实时的交互,使用链接会是更好的选择。
技术上讲,$scope会在DOM元素被实际渲染之前传入到控制器中。在某些情况下,例如使
用了嵌入,控制器中的作用域所反映的作用域可能与我们所期望的不一样,这种情况下,$scope
对象无法保证可以被正常更新。
4.
require参数的值可以用下面的前缀进行修饰,这会改变查找控制器时的行为:
?
如果在当前指令中没有找到所需要的控制器,会将null作为传给link函数的第四个参数。
^
如果添加了^前缀,指令会在上游的指令链中查找require参数所指定的控制器。
?^
将前面两个选项的行为组合起来,我们可选择地加载需要的指令并在父指令链中进行查找。
没有前缀
如果没有前缀,指令将会在自身所提供的控制器中进行查找,如果没有找到任何控制器(或
具有指定名字的指令)就抛出一个错误。
5.尽管元素可以被多个指令所支持或修饰,
这些指令本身的模板中也可以包含其他指令,但只有属于最高优先级指
令的模板会被解析并添加到模板树中。这里有一个建议,就是将包含模板的指
令和添加行为的指令分离开来。如果一个元素已经有一个含有模板的指令了,
永远不要对其用另一个指令进行修饰。只有具有最高优先级的指令中的模板会
被编译。
2.如果指令使用了transclude参数,那么在控制器(下面马上会介绍)中就无法正常监听数据模型的变化了
3.由于指令可以require其他指令所使用的控制器,因此控制器常被用来放置在多个指令间共享的动作。
如果我们希望将当前指令的API暴露给其他指令使用,可以使用controller参数,否则可以
使用link来构造当前指令元素的功能性。如果我们使用了scope.$watch()或者想要与DOM元素
做实时的交互,使用链接会是更好的选择。
技术上讲,$scope会在DOM元素被实际渲染之前传入到控制器中。在某些情况下,例如使
用了嵌入,控制器中的作用域所反映的作用域可能与我们所期望的不一样,这种情况下,$scope
对象无法保证可以被正常更新。
4.
require参数的值可以用下面的前缀进行修饰,这会改变查找控制器时的行为:
?
如果在当前指令中没有找到所需要的控制器,会将null作为传给link函数的第四个参数。
^
如果添加了^前缀,指令会在上游的指令链中查找require参数所指定的控制器。
?^
将前面两个选项的行为组合起来,我们可选择地加载需要的指令并在父指令链中进行查找。
没有前缀
如果没有前缀,指令将会在自身所提供的控制器中进行查找,如果没有找到任何控制器(或
具有指定名字的指令)就抛出一个错误。
5.尽管元素可以被多个指令所支持或修饰,
这些指令本身的模板中也可以包含其他指令,但只有属于最高优先级指
令的模板会被解析并添加到模板树中。这里有一个建议,就是将包含模板的指
令和添加行为的指令分离开来。如果一个元素已经有一个含有模板的指令了,
永远不要对其用另一个指令进行修饰。只有具有最高优先级的指令中的模板会
被编译。
相关文章推荐
- dp poj1948 Triangular Pastures
- Angularjs,WebAPI 搭建一个简易权限管理系统 —— 基本功能演示(二)
- AngularJS开发指南
- AngularJS~大话开篇
- AngularJS 资源和开发教程
- Triangular Pastures-DP(有点像是暴力枚举)
- 每天一个小知识点16(Angularjs总结四)
- AngularJS ng-if ng-repeat下使用ng-model
- angularJS最近总结一些零碎的知识点
- (转)Angular中的拦截器Interceptor
- angularJS学习笔记之一
- AngularJS 中的 Promise 和 设计模式
- AngularJS Directive 隔离 Scope 数据交互
- AngularJS学习笔记(五)
- 简话Angular 08 Angular ajax
- 每天一个小知识点15(Angularjs总结三)
- AngularJS学习笔记(四)
- 使用Spring Boot和Gradle创建AngularJS项目
- AngularJS 之 Factory vs Service vs Provider
- angularjs controller的两种写法