Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 2在不重定向的情况下更新URL路径参数_Angular_Angular2 Routing_Query Parameters - Fatal编程技术网

Angular 2在不重定向的情况下更新URL路径参数

Angular 2在不重定向的情况下更新URL路径参数,angular,angular2-routing,query-parameters,Angular,Angular2 Routing,Query Parameters,使用Angular 2如何在不重定向页面的情况下更新URL路径 我知道您可以使用ActivateRoute queryParamMap Observable访问参数,但如果我想更改这些值并在URL中显示这些值,该怎么办 更新URL中的值可以方便地添加书签 我不想重定向,因为我添加的查询参数是我想存储的简单数据过滤器。只需为两个不同的路由使用相同的组件即可 const批准:路由=[ {path:'somepath',component:someComponent},//yourapp/somepa

使用Angular 2如何在不重定向页面的情况下更新URL路径

我知道您可以使用ActivateRoute queryParamMap Observable访问参数,但如果我想更改这些值并在URL中显示这些值,该怎么办

更新URL中的值可以方便地添加书签


我不想重定向,因为我添加的查询参数是我想存储的简单数据过滤器。

只需为两个不同的路由使用相同的组件即可

const批准:路由=[
{path:'somepath',component:someComponent},//yourapp/somepath
{path:'anotherpath',component:someComponent},//yourapp/anotherpath
];
更改路径

在组件构造函数中,将查询参数订阅到您的模型

this.route.queryParams.subscribe(params=>{
this.myValue=params['myValue'];
});
现在,向视图模型注册一个侦听器函数,或者向模型中添加一个手表。然后,您可以在模型更新后调用导航功能:

navigate(){
this.router.navigate([],{queryParams:{mvvalue:this.myValue}});
}

您能给我们一个代码示例吗?您可以使用路由器重定向,如果路由器位于同一组件上,它只会更改URL,而不会更改页面内容。这是您想要的,还是您也想重新加载页面?如何重定向?我不想重新加载。很抱歉,我还没有任何可共享的代码,因为我想预先知道这将如何工作。你应该看看这个:它可能也适用于你!有没有一种方法可以将参数添加到queryParams而不删除以前的参数?在这个例子中,它基本上是一个“=”符号,但我需要它是“+=”。我想增加新的价值,但保留所有以前的价值。