在开发ionic 4应用程序时遇到一个有趣的错误。 当我注销应用程序并再次登录时,routerLink不再起作用。
routerLinks设置在卡上。在我退出并再次登录之前,它们工作正常。没有错误,浏览器网址正确更改,但是什么也没发生。
我知道这个问题类似于以下问题:ionic 4 + angular: routerLink only works first time,我尝试了提供的解决方案,但它们没有起作用。
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);
});
}
再次登录后,我的应用程序将我正确地引导至具有名片视图的主页。但是在那之后我被困住了。 有什么建议吗?
答案 0 :(得分:0)
我遇到了同样的问题。
为了解决这个问题,我使用了replaceUrl: true
:
this.router.navigateByUrl('/login', { replaceUrl: true });