我是角度和离子的新手,我的应用信息是这样的:我有一个启动画面,我有我的登录页面,然后是主屏幕。现在问题是如果用户已登录一次,那么每当应用程序关闭并再次打开它显示登录屏幕,而不是它应显示主屏幕。我如何实现这一目标。我尝试了很多解决方案,但没有一个能够解决问题。请帮助。
var kit = angular.module('starter', ['ionic','ionic.service.core', 'ngCordova']);
kit.config(function($stateProvider, $urlRouterProvider) {
$stateProvider
.state('start', {
url: '/',
templateUrl: 'templates/start.html',
controller: 'StartController'
})
.state('home', {
url: '/home',
templateUrl: 'templates/home.html',
controller: 'HomeController'
})
.state('scrollView', {
url: '/scroll',
templateUrl: 'templates/ScrollEx.html',
controller: 'ScrollExController'
})
.state('check', {
url: '/check',
templateUrl: 'templates/check.html',
controller: 'CheckController'
})
$urlRouterProvider.otherwise('/');
});
答案 0 :(得分:0)
在登录页面的控制器中,我认为这是StartController
,您可以使用以下内容:
// Note you need $location for navigation here:
app.controller('StartController', ['$rootScope', '$scope', '$location', /*...*/
function ($rootScope, $scope, $location /*...*/) {
// Test condition, just an example:
if (sessionStorage.user.id) {
$location.path('/home');
}
// Controller code goes here
});
假设您的条件为sessionStorage.user.id
。
Angular的$ location将为您优雅地处理路由器导航。