Ionic2 - 每次用户转到根组件时如何在根组件中推送新页面?
Ionic2 - How to push a new page in root component every time a user goes to root component?
我有一个作为根组件的登录页面,它具有检查用户是否已经通过身份验证的功能,因此会推送一个新视图。问题是所有其他视图开始重叠,如下图所示。
Here for image
当我使用它时一切正常,但我需要它 运行 每次用户进入登录页面时:
ngAfterViewInit() {
if(this.auth.authenticated()){
this.navCtrl.push(HomePage);
}
}
这会检查用户是否每次都通过身份验证但会导致重叠。有人可以解释为什么会这样吗?
onPageWillEnter() {
if(this.auth.authenticated()){
this.navCtrl.push(HomePage);
}
}
如果我能给你一些建议:你不应该在你的情况下推送视图,而是直接更改 rootPage,这样你的应用程序将直接加载正确的视图。
要做到这一点非常简单,请转到您的 app.js
。
rootPage: any = null;
constructor(private platform: Platform) {
platform.ready().then(() => {
if(this.auth.authenticated())
this.rootPage = HomePage;
else
this.rootPage = Login;
}
}
我有一个作为根组件的登录页面,它具有检查用户是否已经通过身份验证的功能,因此会推送一个新视图。问题是所有其他视图开始重叠,如下图所示。 Here for image
当我使用它时一切正常,但我需要它 运行 每次用户进入登录页面时:
ngAfterViewInit() {
if(this.auth.authenticated()){
this.navCtrl.push(HomePage);
}
}
这会检查用户是否每次都通过身份验证但会导致重叠。有人可以解释为什么会这样吗?
onPageWillEnter() {
if(this.auth.authenticated()){
this.navCtrl.push(HomePage);
}
}
如果我能给你一些建议:你不应该在你的情况下推送视图,而是直接更改 rootPage,这样你的应用程序将直接加载正确的视图。
要做到这一点非常简单,请转到您的 app.js
。
rootPage: any = null;
constructor(private platform: Platform) {
platform.ready().then(() => {
if(this.auth.authenticated())
this.rootPage = HomePage;
else
this.rootPage = Login;
}
}