如何在不刷新angular8页面的情况下更改url的值

问题描述 投票:1回答:1

我使用window.open在新选项卡中打开页面,在新选项卡中,从主屏幕上,我可以选择进行编辑和查看,因此,如果我单击url中的view,则传递1,并且在单击编辑时,我传递2,所以我传递的共有3个值,带有2个代码。现在,当我单击主页上的“查看”按钮时,我将获得如下网址:

http://localhost:4200/data?dt=1211-1211-1

因此,在视图中,我有一个“编辑”按钮,该按钮可启用所有字段的编辑,所以在这里我希望我的网址是

http://localhost:4200/data?dt=1211-1211-2,

因此,它将处于编辑模式。我已经使用激活的路由器从主页的URL到新选项卡中获取值

 let url = this.route.snapshot.queryParams.dt.split("-");
    this.gp= url[0];
    this.ap = url[1];
    this.mode = url[2];
angular angular-router
1个回答
0
投票

您可以使用新的查询参数导航到当前路线,这不会重新加载页面,但会更新查询参数

editMode(){
const queryParams = this.gp.toString() + this.ap.toString() + '2';    
this.router.navigate(
        [], 
        {
          relativeTo: this.route,
          queryParams: queryParams,
          queryParamsHandling: 'merge'
        });
}
© www.soinside.com 2019 - 2024. All rights reserved.