簡體   English   中英

Angular中的指令優先級不起作用

[英]Directive priority in Angular not working

我有這個元素:

<div ace-editor dl-editor></div>

這些指令:

angular.module('DLApp')


.directive 'aceEditor', () ->
  restrict: 'A'
  priority: 10
  scope: false
  link: linkFunc1

.directive 'dlEditor', (Graph) ->
    restrict: 'A'
    priority: 0
    scope: false
    link: linkFunc2

(我知道0是默認值)

dlEditor總是首先被執行,然后是aceEditor 我究竟做錯了什么?

根據文件
強調我的

優先
當在單個DOM元素上定義了多個指令時,有時需要指定應用指令的順序。 優先級用於在調用編譯函數之前對指令進行排序。 優先級定義為數字。 首先編譯具有更高數字優先級的指令。 預鏈接功能也按優先級順序運行, 但后鏈接功能以相反的順序運行 具有相同優先級的指令的順序是未定義的。 默認優先級為0。

因此,首先編譯具有較高優先級的指令( aceEditor ),但它的后連接功能(這似乎是您感興趣的)最后運行。

您應該在預鏈接功能中移動邏輯(如果這適用於您的情況)或反轉優先級。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM