gpt4 book ai didi

AngularJS ui-router,如何在抽象父状态的解析对象中获取目标状态的名称?

转载 作者:行者123 更新时间:2023-12-04 15:43:48 26 4
gpt4 key购买 nike

我正在使用 ui-router 并且我有子状态和一个抽象状态 - 父状态。

现在,我希望能够进行一些用户 Angular 色管理,并且我希望在一个地方为所有根用户进行管理。

最好的方法是在父级的状态中解析 object.$stateProvider

在这里,我这样做是为了管理应用程序宽度身份验证数据。

问题是,如何从抽象状态的解析函数中获取目标状态?

    .state('section', {
abstract: true,
template: '<ui-view/>',
resolve: {

// Auth & role management middleware.
UserData: ['$q', '$stateParams', 'Session', function ($q, $stateParams, Session) {

// HOW DO I GET THE DESTINATION ROUTE HERE.
$state.current.name - returns null
$stateParams - is an empty object.
// ANY IDEAS?

var userData;
userData = Session.getUserData();
if (userData.token) {
return userData;
}
return $q.reject('login');
}]
}
});

最佳答案

内部解析时状态未更新。

到目前为止,我的解决方法是通过以下方式收听 '$stateChangeStart' 事件
$rootScope.$on('$stateChangeStart', callback)
此事件在解析之前发出,传递给回调的第二个参数是 toState里面有你需要的信息。

你可以把这个逻辑放到你的Session service

关于AngularJS ui-router,如何在抽象父状态的解析对象中获取目标状态的名称?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26632980/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com