Angular app.run在app中保存数据的可能性

时间:2016-02-10 19:12:58

标签: angularjs angular-ui-router

在app.run中有可能我在$ caseParams中记录这个案例中的任何信息并写入$ rootScoope吗?

这很简单,因为我将服务器拉到即将收集的mongodb,我只是在应用程序中编辑它。

我想在所有状态条目中阻止我必须提取较少的数据。

我的app.run in test:

.run(function($rootScope, $state, $stateParams, CLIENTS) {

    $rootScope.$state       = $state;
    $rootScope.$stateParams = $stateParams;

    console.log($stateParams);


    CLIENTS.getList({client: client})
     .then(function(res){
         console.log(res);
     });

});

遵循以下道路:

$rootScope.$on('$stateChangeStart', function(event, toState, toParams, fromState, fromParams) {


        // get Client data
        if(!$rootScope.clientSet) {
            CLIENTS.getList({client: toParams.client})
            .then(function(res){
                $rootScope.clientSet = res[0];
            });
        }

}

1 个答案:

答案 0 :(得分:2)

https://github.com/angular-ui/ui-router/wiki#state-change-events 您可以侦听事件,以便在rootScope中刷新数据。

$rootScope.$on('$stateChangeSuccess', 
function(event, toState, toParams, fromState, fromParams){ ... })