如果ionViewCanEnter在ionic3上返回false,我该如何设置重定向

时间:2018-01-24 09:32:37

标签: angular ionic3

在身份验证无效的情况下,如何将重定向设置为LoginPage

在angular4中,我通过路由器上的警卫设置重定向

但ionic3不是路由器,如果在MyApp构造函数中设置,这只能在初始化时生效,并且在用户稍后注销或身份验证无效时无法生效。这个解决方案不适合我。 所以我看到了NavController,我在ionViewCanEnter()中返回false,离子是成功拦截了请求,但是它被重定向到一个空白页面,我想把这个空白页面设置为LoginPage,我试过{{1} } {和navCtrl.push()navCtrl.setRoot()中,如果函数返回false不正确重定向,它仍然保留在空白页中

如果无效身份验证

,如何设置重定向

2 个答案:

答案 0 :(得分:1)

setTimeout(() => {
    this.navCtrl.setRoot('UnauthorizedPage');
});

这对我有用。

答案 1 :(得分:0)

为我工作

setTimeout(() => {
   this.app.getRootNav().setRoot('LoginPage');
}, 200);