我有一个登录页面作为根组件,其中一个函数检查用户是否已经过身份验证,因此推送了一个新视图。问题是所有其他视图开始重叠,如下图所示。 Here for image
当我使用它时一切正常但我每次用户进入登录页面时都需要它运行:
ngAfterViewInit() {
if(this.auth.authenticated()){
this.navCtrl.push(HomePage);
}
}
这将检查用户是否每次都经过身份验证,但会导致重叠。有人可以解释为什么会这样吗?
onPageWillEnter() {
if(this.auth.authenticated()){
this.navCtrl.push(HomePage);
}
}
答案 0 :(得分:0)
如果我可以向您推荐一些内容:您不应该在您的情况下推送视图,而是直接更改rootPage,这样您的应用就会直接加载正确的视图。
要做到这一点非常简单,请转到app.js
。
rootPage: any = null;
constructor(private platform: Platform) {
platform.ready().then(() => {
if(this.auth.authenticated())
this.rootPage = HomePage;
else
this.rootPage = Login;
}
}