检查 localStorage 是否在 AngularJS 路由中有值的最简单方法
The easiest way to check if localStorage has a value in AngularJS routing
web 中的许多教程都有一些奇怪和巨大的逻辑 angularJS 条件路由...
我需要一些非常简单的东西:
只需检查一个组件,如果 localStorage 的 authFlag 为 true,则类似:
app.config(function ($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'views/app.html',
controller: 'AppCtrl'
})
.when('/articles', {
templateUrl: 'views/articles.html',
controller: 'ArticlesCtrl',
conditions: { isAuth }
})
.otherwise({
redirectTo: '/'
});
});
怎么做比较好?检查 authFlag 是否在 localStorage 中,如果不在,则根目录到 '/' ?
你需要添加解析,然后在解析函数中,添加对本地存储的检查,
如果不是,则路由到“/”:
在resolve函数中添加如下代码
resolve:{
data: function(){
var result = window.localStorage.getItem("authFlag");
if (result)
{
// do whatever you want to do
}
else
{
$location.path("/");
}
}
},
web 中的许多教程都有一些奇怪和巨大的逻辑 angularJS 条件路由...
我需要一些非常简单的东西:
只需检查一个组件,如果 localStorage 的 authFlag 为 true,则类似:
app.config(function ($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'views/app.html',
controller: 'AppCtrl'
})
.when('/articles', {
templateUrl: 'views/articles.html',
controller: 'ArticlesCtrl',
conditions: { isAuth }
})
.otherwise({
redirectTo: '/'
});
});
怎么做比较好?检查 authFlag 是否在 localStorage 中,如果不在,则根目录到 '/' ?
你需要添加解析,然后在解析函数中,添加对本地存储的检查, 如果不是,则路由到“/”:
在resolve函数中添加如下代码
resolve:{
data: function(){
var result = window.localStorage.getItem("authFlag");
if (result)
{
// do whatever you want to do
}
else
{
$location.path("/");
}
}
},