I have an AngularJS app starting at index.html and using ui-router. Based on a trigger I want to reload the complete page. I tried:
$state.go($state.current,
This worked for me in a similar scenario.
$state.go('root.state').then(function(){
$state.reload();
});
Everybody seems to have ignored what Serge van den Oever appears to actually be asking, and that's that he wants entire page to reload, and not just the route.
The solution for that is pretty simple if you inject the $window
service into your controller:
$window.location.reload();
If you just want the route to reload (which seems to be much more common), and are using ui-router
, then just inject the $state
service and do:
$state.reload();
This should reinitialize controllers now that the bug has been fixed, although I don't think it reinitializes resolve
s.
Try this:
$state.transitionTo($state.current, $stateParams, {
reload: true,
inherit: false,
notify: true
});
If you include the $route service in your controller you could try $route.reload();
The current trick is:
$state.go($state.current.name, $state.params, { reload: true });