我在同一頁面上有兩個指令,但在另一個元素上。 類似的東西:Angularjs:指令加載順序
<div directive-one>
<div directive-two></div>
</div>
在directiveOne,我創建一些變量(比方說,$scope.pageConfig.variable
)。 我想指令兩個使用這個變量。
問題 - directiveOne不總是在directiveTwo之前加載。
問題是 - 有沒有辦法確保directiveOne在directiveTwo之前加載,以便該變量可用於directiveTwo?
謝謝:)
更新: 我已經找到了答案應該是在directiveOne使用控制器這樣的:
return {
controller: function($scope){ $scope.variable = variable; },
link : ...
}
的問題是,我得到一個錯誤[$注入器:unpr]以這種方式使用時。這應該解決我的問題嗎?任何想法爲什麼這會給我造成一個錯誤?
您可以給予指令1更高的優先級。請參閱https://docs.angularjs.org/api/ng/service/$compile - 優先 – hutingung
請顯示您的指令代碼。你在哪裏把你的邏輯放在兩個指令中,postLink? – runTarm
我把邏輯放在鏈接函數中。我試圖使用控制器,這應該工作,但我得到一個錯誤。現在我看到每次將控制器放入我的任何指令時都會出現錯誤。不管控制器中有什麼。奇怪... – yccteam