我想将页面重定向到主页(Override登录页面(,当它已经在localStorage上具有令牌时。怎么做?我在app.component.ts上的constructor((上有以下代码,但是在请求完成之前,它首先显示登录
statusBar.backgroundColorByHexString('#D32F2F');
splashScreen.hide();
if(localStorage.getItem('token')){
authProvider.silent_login().subscribe(res => {
console.log(res);
if(res.error==0){
this.rootPage = HomePage;
}
})
}
您可以喜欢
@ViewChild(Nav) nav: Nav;
rootPage: any = null; // Initialize it as null
pages: Array<{title: string, component: any}>;
constructor(public platform: Platform,
public statusBar: StatusBar,
public splashScreen: SplashScreen,
public commonProvider: CommonProvider) {
this.commonProvider.retrieve("is_login").then(loggedIn => {
// Assign the right page after checking the status
this.rootPage = loggedIn ? TabsPage : SigninPage;
});
}
该解决方案是生成一个名为Splash的页面,并将应用程序的根页设置为IT,然后在constructor中,我们检查令牌。如果将根页面设置为登录,并且如果成功将root Page设置为HomePage。
我认为那是唯一的解决方案。Splash页面作为凭据检查器。
也许它有助于其他