问题
In the route configuration of my AngularJS application most of the routes are defined with the option reloadOnSearch
set to false
as most of the time a page should not reload when search parameter changed.
But in rare circumstances I need a different behaviour where I need to reload the URL although only the search parameters changed.
Is there a way to force AngularJS to reload the URL although reloadOnSearch
is set to false
?
回答1:
I have not tried it, but something that you can try is.
In the $routeUpdate
event handler call the $route.reload()
method if you know the condition that should cause refresh of route.
回答2:
In case you are trying to force reload when a user clicks a link, set link's target attribute. It will trigger reload regardless of reloadOnSearch=false
<a href="/same_page?different_param=123" target="_self">Reload</a>
回答3:
This is also work
app.controller('appCtrl',function($scope,$window){
$scope.reload =function(){
$window.location.reload();
}
})
html
<div ng-click="reload()">reload</div>
来源:https://stackoverflow.com/questions/19137504/force-angularjs-to-reload-a-route-although-option-reloadonsearch-is-set-to-false