如何用AngularJS删除GET参数?

时间:2013-01-25 17:15:15

标签: get angularjs url-routing

#/order/123?status=success

点击路线'/order/:id'并转到OrderCtrl

我们访问$routeParams.query后,我们要清除#/order/123的网址。如何实现这一目标?

2 个答案:

答案 0 :(得分:17)

使用$location服务,您可以通过为其分配空值来删除搜索参数:

$location.search( 'status', null );

但是你应该注意,默认情况下,这将重新加载当前路线。如果您不想重新加载当前路线,可以在路线定义中禁用该路线:

$routeProvider.when( '/order/:id', {
  // yada yada...
  reloadOnSearch: false
});

但是$routeUpdate仍会触发,可以作出反应。

答案 1 :(得分:12)

删除所有搜索参数的更有效方法可能是

$location.search({});