[英]Redirect to another view in angularjs
當用戶登錄時,如果存在令牌,則在localstorage中設置一個令牌,它將進入博客頁面,否則將啟動登錄頁面。
.config(function($stateProvider, $urlRouterProvider) {
$stateProvider
.state('app', {
url: '/app',
abstract: true,
templateUrl: 'templates/menu.html',
controller: 'AppCtrl'
})
.state('app.login', {
url: '/login',
views: {
'menuContent': {
templateUrl: 'templates/login.html',
controller:'LoginCtrl'
}
}
})
.state('app.blog', {
url: '/blog',
views: {
'menuContent': {
templateUrl: 'templates/blog.html',
controller: 'PlaylistCtrl'
}
}
})
//if token null got login
if(window.localStorage.getItem('usertoken')==null){
$urlRouterProvider.otherwise('/app/login');
}else{
//go to blog
alert('logged');
$urlRouterProvider.otherwise('/app/blog');
}
});
我將收到alert('logged')
但不會進入blog
視圖,而是進入login
視圖
您可以進行中間視圖。 想象一下dashboard.html
<ion-view >
<ion-content>
</ion-content>
</ion-view>
讓你否則去那里
$urlRouterProvider.otherwise('/app/dashboard');
並在此控制器中進行稱贊
.controller('DashboardCtrl', function($rootScope, $state) {
if(window.localStorage.getItem('usertoken')==null){
$state.go('/app/login');
}else{
//go to blog
alert('logged');
$state.go('/app/blog');
}
});
嘗試這個
$urlRouterProvider.otherwise(window.localStorage.getItem('usertoken')==null ? '/app/login' : '/app/blog');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.