2017-06-04 30 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>