How can I redirect or update the url? I cannot find any good documentation regarding this. Basically, what I want to do is to change the $routeParams dynamically and update the url with the new value.
My code looks like this:
if ($routeParams.time) {
var url;
$routeParams.time = encodeURIComponent(value);
url = '/' + $routeParams.time + '/' + 'marketing/networks';
$location.path(url);
} else {
$routeParams.time = encodeURIComponent(value);
url = '/' + $routeParams.time + $location.path();
$location.path(url);
}
After reading the comments to my answer, I think maybe is not the right answer for this case. Please, before using this solution, read the comments and other answers. I'm not using Angular anymore so I don't feel qualified for answering.
I leave the original answer unmodified below:
You are changing the location properly but AngularJS it's not realizing that it changed. You can solve the problem using the method '$apply' of your scope like this:
$location.path( url );
$scope.$apply();
Or like this:
$scope.$apply( $location.path( url ) );
See $apply documentation here http://docs.angularjs.org/api/ng.$rootScope.Scope
You might want to try native browser object $window.location.href
instead, according to http://docs.angularjs.org/guide/dev_guide.services.$location (in Caveats
section).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With