#/order/123?status=success
hits the route '/order/:id'
and takes to OrderCtrl
.
Once we access the $routeParams.query
, we want to clear the url to #/order/123
. How can this be achieved?
#/order/123?status=success
hits the route '/order/:id'
and takes to OrderCtrl
.
Once we access the $routeParams.query
, we want to clear the url to #/order/123
. How can this be achieved?
Using the $location
service, you can remove the search param by assigning it a null value:
$location.search( 'status', null );
But you should note that, by default, this will reload the current route. If you don't want to reload the current route, you can disable that in your route definition:
$routeProvider.when( '/order/:id', {
// yada yada...
reloadOnSearch: false
});
But the $routeUpdate
will still fire and can be reacted to.
A more efficient way to remove all search params would probably be
$location.search({});