Angular - 将params附加到URL

时间:2018-06-06 09:41:09

标签: angular angular-http

我想将参数附加到网址:

 let params = [];
 params["p1"] = "value1";
 params["p2"] = "value2";

this.location.go(this.router.createUrlTree([this.data]).toString());

当我有这个网址localhost/project/page时,它的工作正确无误。但是当我追加网址localhost/project/page/id

之后我有网址localhost/project/page/p1=..

我需要将参数保留在url中并添加新参数。谢谢你的建议

2 个答案:

答案 0 :(得分:0)

您可以在路由中发送params,如下所示 -

[routerLink]="['project/page','params']"

如果您希望以query params的身份发送,请按照这样发送 -

<a [routerLink]="['project/page']" [queryParams]="{ page: 99 }">Your caption</a>

答案 1 :(得分:0)

单击按钮时,调用如下方法? 这里this.routerRouter实例,将其注入您的组件。

onClick(params) {
    this.router.navigate(['project', 'page', {id : id}], {queryParams: {p1: params['p1'], p2: params['p2']}});
}