UI路由器父状态授权

时间:2015-08-22 09:30:21

标签: javascript angularjs angular-ui-router angularjs-routing

我正在尝试在Route定义中创建一个父状态来处理这样的Autorization:

$stateProvider.state('root', {
  abstract: true,
  resolve: {
  auth: ['Auth',
    function (Auth) {
      return Auth.authorize()
    }
  ]}
})

这个父状态在我的其他状态中定义如下:

.state('home', {
  parent: 'root',
  url: '/',
  templateUrl: 'views/home.html',
  controller: 'HomeCtrl'
})

根据我对父母状态和this帖子的理解,它应该像这样工作。

Auth.authorize方法工作正常,因为我可以对每个状态做一个简单的解决。这是功能:

function authorize() {
    var user = getCurrentUser();
    if (user)  return $q.when(user);
    else {
        $timeout(function() {
            $state.go('login')
        });
        return $q.reject();
    }
}

响应正常,但页面未显示。我在这里缺少什么?

0 个答案:

没有答案