Angularjs 我有2个app.run方法。如何在第一个方法中停止,直到承诺得到解决?

Angularjs 我有2个app.run方法。如何在第一个方法中停止,直到承诺得到解决?,angularjs,angularjs-scope,angular-ui-router,angular-ui-router-extras,Angularjs,Angularjs Scope,Angular Ui Router,Angular Ui Router Extras,我需要先完成Usercervice.aclcall,然后运行second run(apprun)需要调用的方法是UserService.acl()中的代码 让acl=()=>{ 返回$http.get(AppConstants.api+/acl/user resources) 。然后((res)=>{ 返回资源数据 }) } 请你解释一下,使用一些代码,这会很好,谢谢你没有用任何其他方法在第一次运行时保持执行。我想做的是在任何状态转换发生之前先获取数据。我进行了一些挖掘,发现运行方法是异步和并行

我需要先完成
Usercervice.acl
call,然后运行second run(apprun)需要调用的方法是
UserService.acl()中的代码

让acl=()=>{ 返回$http.get(AppConstants.api+
/acl/user resources
) 。然后((res)=>{ 返回资源数据 })
}


请你解释一下,使用一些代码,这会很好,谢谢你没有用任何其他方法在第一次运行时保持执行。我想做的是在任何状态转换发生之前先获取数据。我进行了一些挖掘,发现运行方法是异步和并行的,所以我无法停止它们,所以创建了它加载页。它将继续加载,直到我的异步回调响应
angular.module('app', [
        ...   ])

.constant('AppConstants', constants)

.config(appConfig)

.run((UserService, User) => {
    'ngInject';
    console.log('apprun')
    UserService.acl()
        .then((data) => {
            console.log('data')
            User.setACL(data)
            console.log(data)//finsish this first then go to second run call
        })
        .catch((err) => {
            console.log(err);
        })

})
.run(appRun)

.component('app', AppComponent)
.constant('AppConstants', constants)

.config(appConfig)

.run((UserService, User) => {
    'ngInject';
    console.log('apprun')
    UserService.acl()
    .then((data) => {
        console.log('data')
        User.setACL(data)
            console.log("done with first run")//finsish this first then go to second run call
            /*here is my second run block i.e. on success of first one*/

            var acl = () => { 
                return $http .get(AppConstants.api + /acl/user-resources).then((res) { 
                    return res.data 
                })
        }
    })
    .catch((err) => {
        console.log(err);
    })

})
.run(appRun)

.component('app', AppComponent)