我在开发ionic 4应用程序时遇到了一个有趣的错误。当我注销应用程序并再次登录时,routerLinks不再工作。
路由器链接设置在卡上。在我注销并再次登录之前,他们一直工作得很好。没有错误,并且浏览器Url正在正确更改,但没有发生任何事情。
我知道这个问题与这个问题类似:离子4+角度:routerLink只在第一次工作,我尝试了提供的解决方案,但它们不起作用。。
npm i @ionic/angular
不起作用。
在卡片上提供点击监听器也不起作用:
openPage(page: string) {
this.router.navigateByUrl(this.router.url + '/' + page);
}
我的卡:
<ion-card routerLink="/developers/home/apps">
...
</ion-card>
我的登录方式:
login() {
const token = this.databaseService.getToken();
if (token) {
this.storage.set(TOKEN_KEY, token).then(() => {
this.authenticationState.next(true);
});
}
}
我的注销方法:
logout() {
return this.storage.remove(TOKEN_KEY).then(() => {
this.authenticationState.next(false);
});
}
在我再次登录后,我的应用程序会将我正确地路由到带有卡片视图的主页。但在那之后我就陷入了困境。有什么建议吗?
我遇到了同样的问题
为了解决这个问题,我使用了replaceUrl: true
:
this.router.navigateByUrl('/login', { replaceUrl: true });