$location.search()
to set an url
the search parameter which is passed to the search()
is set by a form. selecting and deselecting an element causes some parameters value to be "null" and so the url looks like this :
myapp.com/search?type=text¶meter=null
so i would like to remove those "null" parameters from the url. In the documentation, there is a "paramValue" which can be passed as a second parameters to .search(search, paramValue) : If the value is null
, the parameter will be deleted.
but i can't make this work… any suggestion ?
edit: here is a solution based on @BKM explanation
to remove every parameters which are null
, it's necessary to loop through all of them and test each one, like this :
for (var i in search) { if (!search[i]) $location.search(i, null); } $location.search(search);
In the editor, select the parameters in the parameter line and choose Delete Parameters in the toolbar. The Delete and Adapt Parameters window is displayed, containing a list of parameters from which you can select the parameters you want to delete.
A good choice for a "null" url is about:blank . The default behavior for browsers navigating to about:blank is to create an empty document in the current site context, without needing to make any web requests for the content, because there isn't any content.
Using the $location
service, you can remove the search param by assigning it a null value:
In the case when your parameter is null, in your case 'parameter'
you can remove it from the url by assigning it a null value like;
$location.search('parameter', null);
Hope it helps.
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