使用resolve return作为状态参数

时间:2013-11-26 23:46:36

标签: angularjs angular-ui-router

我正在使用AngularJS和UI-Router编写SPA应用程序。我想要实现的是将着陆控制器中的resolve方法的结果用作相同状态的状态参数。

这就是我想要做的事情:

  • 用户登录
  • 用户登陆account州,
  • stateParam :accountId会自动填充resolve方法返回的值,例如,根据用户的不同,网址会变为'/ account / 12334 /'。
  • 任何后续状态都是帐户状态的“子”。

这就是我的尝试:

  .state('account', {
    url: '/account/:accountId',
    templateUrl: '/partials/account.html',
    controller: 'AccountCtrl',
    resolve: {
      'accountId': ['Account', '$stateParams', function(Account, $stateParams) {
        $stateParams.accountId = Account.promise;
      }]
    }
  })

但网址保持不变。

1 个答案:

答案 0 :(得分:0)

我自己解决了这个问题:当我在StackOverflow上发布问题时,我简化了问题,我发现问题不在于解决方法,而在于我使用工厂的方式,得到一个空的帐户ID。