2017-06-04 31 views
0

運行的執行假設有在app兩個運行功能:優先angularjs

angular.module('exmple',[]) 
 
.run(function(){ 
 
    console.log('second'); 
 
}) 
 
.run(function(){ 
 
    console.log('first'); 
 
});

有什麼辦法來執行基於優先級運行?

+0

什麼優先權? – dfsq

+0

如果優先級最大,則首先執行運行塊。 –

+0

但是你認爲跑步區塊的優先級是什麼意思?你可以在組件/指令上定義優先級,但是隻要找到就執行一次運行。爲什麼你不只是構造你的代碼,以便在另一個之前執行你想要的代碼? – quirimmo

回答

1

如果代碼是在服務,它將在依賴的順序運行:

angular.module('exmple',[]) 
.run(function(firstService){ 
    console.log('second'); 
}) 
.service("firstService", function(){ 
    console.log('first'); 
}); 

通過使運行塊限定firstService作爲依賴,依賴注射器將在運行的代碼之前初始化該服務跑塊。

演示

angular.module('app',[]) 
 
.run(function(firstService){ 
 
    console.log('second'); 
 
}) 
 
.service("firstService", function(){ 
 
    console.log('first'); 
 
});
<script src="//unpkg.com/angular/angular.js"></script> 
 
<div ng-app="app"> 
 
</div>