如果搜索参数未更改,则$ location.search无效

时间:2014-02-07 06:37:10

标签: angularjs

如果搜索参数与当前位置的参数相同,则 $ location.search不会重新加载路径。

如果window.location"url#RouteName?param1=value1"

在某些按钮点击调用方法,其中包含以下代码。

$location.path("/RouteName").search({param1 :"value1"});

然后路由没有重新加载,如何强制重新加载。我在路由配置中设置了reloadOnSeach : true

$routeProvider.when("RouteName", {templateurl:"pag1.html",controller:"MyCtrl",reloadOnSearch:truee}); 

2 个答案:

答案 0 :(得分:2)

重新加载路由不是由$location.search显式完成的,实际上如果函数调用未更改url,它不会执行任何操作

使用

$route.reload()

答案 1 :(得分:2)

Reload会实现这条路线。

如果您想更改搜索:

$location.search({'slide_id': slide_id})

如果您的路线参数没有改变(或更改为相同的值),那么您可能需要强制更改位置:

$scope.$emit('$locationChangeSuccess');