相关疑难解决方法(0)

如何理解指令的`terminal`?

在此页面中:http://docs.angularjs.org/guide/directive

指令定义对象

终奌站

如果设置为true,则当前优先级将是将执行的最后一组指令(当前优先级的任何指令仍将执行,因为未定义相同优先级的执行顺序).

我不太懂.什么current priority意思?如果有这样的指令:

  1. 带有{priority:1,terminal:false}的directive1
  2. 带有{priority:10,terminal:false}的directive2
  3. 带有{priority:100,terminal:false}的directive3
  4. 带有{priority:100,terminal:true}的directive4 //这是真的
  5. 带有{priority:1000,terminal:false}的directive5

请注意directive4terminal:true和其他人有false.

如果有一个html标签包含所有5个指令:

<div directive1 directive2 directive3 directive4 directive5></div>
Run Code Online (Sandbox Code Playgroud)

5指令的执行顺序是什么?

angularjs angularjs-directive

64
推荐指数
1
解决办法
3万
查看次数

AngularJS:ng-repeat的编译和链接功能

我试图理解编译和链接功能之间的区别.在编译器的角度文档中,它说

对于集合中的每个项目,一些指令(例如ng-repeat克隆DOM元素)一次.编译和链接阶段提高了性能,因为克隆模板只需要编译一次,然后为每个克隆实例链接一次.

我查看了源代码,试图了解它是如何工作的,我不知道它如何为每个克隆实例创建一个单独的链接函数.对我来说,看起来编译函数为ng-repeat指令返回一个链接函数.此链接函数确实为ng-repeat中的每个元素创建了一个新范围,但没有为每个克隆实例提供单独的链接函数.

angularjs angularjs-directive angularjs-ng-repeat

7
推荐指数
1
解决办法
4748
查看次数