无法使用下一个和上一个参数访问 $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
event
、next
、prev/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
What i am trying to do
如问题标题中所述,我想检查下一条路线的授权和身份验证,因此我在路线上创建了自定义属性并尝试在 $locationChageStart 中访问它们。
Problem i am facing is
event
、next
、prev/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