AngularJS使用$ compile服务动态添加角度元素,添加指令后链接函数执行不正确

时间:2014-11-18 19:35:03

标签: angularjs angularjs-directive

这是指向如何以正确的顺序执行指令链接功能的链接(不是我的文章): Correct Execution Order

基本上,如果您有嵌套指令,如下:

<level-one>  
    <level-two>
        <level-three>

        </level-three>
    </level-two>
</level-one>  

执行顺序应如下所示:

COMPILE PHASE

  • levelOne:编译函数被称为
  • levelTwo:编译函数被称为
  • levelThree:编译函数被称为

PRE-LINK PHASE

  • levelOne:称为预链接功能
  • levelTwo:称为预链接功能
  • levelThree:称为预链接功能

POST-LINK PHASE

  • levelThree:调用后期链接功能
  • levelTwo:调用后期链接功能
  • levelOne:调用后期链接功能

当使用$ compile服务将指令动态添加到视图时,后链接函数以相反的顺序执行。在调用父子指令的帖子链接功能之前调用父子指令的帖子链接功能。

这是指向我的plunker的链接,用于演示:Plunker

您会在控制台中注意到&#34;标签&#34;指令帖子链接功能在其父母&#34;之后被调用。指令被调用。

注意:我必须添加额外的&#34;父母&#34;对DOM的指令或它会失败,你将无法看到执行顺序。

这是设计还是角度的错误?

0 个答案:

没有答案