我的App有一个模块化结构,这意味着我有许多配置文件,其中包含路由定义。我尝试使用解析器检查用户是否已经过身份验证,然后再将其移至下一个路径视图。
现在我可以在配置中重用一个函数作为我的解析方法,即
function resolverFunc(Auth, $state){
if(!Auth.isLoggedIn()){
$state.go('login');
}
}
$stateProvider.state('state1', {
url: "/myurl",
resolver:{
loggedIn: resolverFunc
}
}
)
.state('state2',{
url: '/url2',
resolver:{
loggedIn: resolverFunc
}
})
问题是我必须在每个模块中定义resolverfunc
。因为每个模块都有自己的module.config()
,其中为该模块定义了路由。
是否有更简单的解决方案。我不得不在每个配置文件中为所有具有路径
的模块重写此函数