AngularJS UI路由器子状态不等待父进行解析

时间:2015-04-21 10:17:29

标签: angularjs angular-ui-router

似乎孩子们的状态不会等到父州解决。我使用resolve config选项在用户以共同父状态登录系统后很快加载公共数据。然后所有的孩子都可以使用它。我还有一个auth拦截器来检查数据是否已加载。我创建了一个简单的例子来演示我的问题。您不需要用户名或密码登录,只需查看日志即可。应用程序无法导航到主页,因为用户数据尚未加载。我使用http://scotch.io中的一个示例来创建这个简单的应用程序。我想知道如何配置ui路由器,让孩子们等到父母的承诺得到解决。

当在$ stateChangeStart上授权触发app.home状态时,即使我在app.home中加载数据,即使我正在加载app.home的父级数据

function authorize(event, toState, toParams){
        if(/^app/.test(toState.name)) {
            console.log('toState', toState, 'cache', cache);
            if(!cache.hasOwnProperty('user')) {
                event.preventDefault();
                $state.transitionTo('login');
                console.log('data not loaded', event);
            }
        }
    }

实施例

http://plnkr.co/edit/hS8jKONk0ZfyJfE4r7Ty?p=preview

0 个答案:

没有答案