Ionic 5,Angular 9从URL删除查询参数

时间:2020-04-01 17:47:44

标签: angular ionic-framework ionic5

我有PWA和带有Ionic 5的移动应用程序。我单击电子邮件中的URL,该URL使用通用链接重定向。

attempts

我的目标是在页面加载时使用params创建一个新对象,然后删除该params并导航到下一页。我使用的是这样的位置。

UPDATE gamescore  
SET avg_score = (attempts * avg_score + ?) / (attempts + 1),
    attempts = attempts + 1 
WHERE uid = ?;

这一切都很好,并且从URL中删除了参数,但是问题是当我使用https://example.com/?param1=value1&param2=value2 向后导航时,它使我回到首页,但是参数又被重新加载。我猜想this.route.queryParams.subscribe( params => { if (params.create) { const navParams = params; // Do something with params this.location.replaceState("/"); this.navCtrl.navigateForward("/another-page/:id) } } ) 不能完全清除queryParams。

在导航到下一页之前,我尝试过ion-back-button,但这没用。

你能建议吗?谢谢。

2 个答案:

答案 0 :(得分:0)

尝试this.navCtrl.navigateForward时导航到这样的页面:

https://example.com/nextpage/?params

通过在它们之间添加nextpage可以达到您想要的目的,但是会将多余的下一页添加到您的网址中

这样,当您向后导航时,上一个参数将消失。

答案 1 :(得分:0)

不确定是否可以解决此问题,但是可以尝试...

import { ActivatedRoute } from '@angular/router';

...
...

const paramValue = this.activatedRoute.snapshot.queryParamMap('paramKey');