无法使用下一个和上一个参数访问 $locationChangeStart 中的 $state 自定义属性

Unable to access $state custom properties in $locationChangeStart with next and prev arguments

What i am trying to do

如问题标题中所述,我想检查下一条路线的授权和身份验证,因此我在路线上创建了自定义属性并尝试在 $locationChageStart 中访问它们。

Problem i am facing is

eventnextprev/current 参数正确,但自定义属性返回未定义

我的代码

myModule.run(function($rootScope,authService,$state){

        $rootScope.$on("$locationChangeStart",function(e,next,prev){

            console.log(e+","+next+","+prev);  //correct
            console.log(next.reqAuthentication); // returning undefined
            console.log(prev.reqAuthentication); // returning undefined
        });
    })

Config 路由就像

           .state('profile.company', {
            url: "/company",
            templateUrl: 'partials/companyprofile.html',
            controller: 'adminCtrl',
            reqAuthentication:true,
            authenticateRole:['a','b',"c"]

        })
        .state('profile.messages', {
            url: "/messages",
            templateUrl: 'partials/chat.html',
            controller: 'adminCtrl',
            reqAuthentication:true,
            authenticateRole:['a','b',"b"]
            })

注意: 我正在使用 ui 路线,所以我认为我将其与 ngRoute

混为一谈

你可以使用这个:

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

如果您想使用状态。

您可以找到更多详细信息https://github.com/angular-ui/ui-router/wiki