A nested API to configure the URL and retrieve URL information
See: UrlConfigApi for details
A nested API for managing URL rules and rewrites
See: UrlRulesApi for details
Disables monitoring of the URL.
Disables monitoring of the URL.
Call this method before UI-Router has bootstrapped. It will stop UI-Router from performing the initial url sync.
This can be useful to perform some asynchronous initialization before the router starts. Once the initialization is complete, call listen to tell UI-Router to start watching and synchronizing the URL.
// Prevent $urlRouter from automatically intercepting URL changes when it starts;
urlService.deferIntercept();
$http.get('/states.json').then(function(resp) {
resp.data.forEach(state => $stateRegistry.register(state));
urlService.listen();
urlService.sync();
});
Passing no parameter is equivalent to `true`.
Gets the hash part of the current url
Gets the hash part of the current url
If the current URL is /some/path?query=value#anchor
, this returns anchor
the hash (anchor) portion of the url
Starts or stops listening for URL changes
Starts or stops listening for URL changes
Call this sometime after calling deferIntercept to start monitoring the url. This causes UrlRouter to start listening for changes to the URL, if it wasn't already listening.
If called with false
, will stop listening. Call listen() again to start listening
urlService.deferIntercept();
$http.get('/states.json').then(function(resp) {
resp.data.forEach(state => $stateRegistry.register(state));
// Start responding to URL changes
urlService.listen();
urlService.sync();
});
Registers a url change handler
Registers a url change handler
let deregisterFn = locationServices.onChange((evt) => console.log("url change", evt));
a function that de-registers the callback
Returns the current URL parts
Gets the path part of the current url
Gets the path part of the current url
If the current URL is /some/path?query=value#anchor
, this returns /some/path
the path portion of the url
Gets the search part of the current url as an object
Gets the search part of the current url as an object
If the current URL is /some/path?query=value#anchor
, this returns { query: 'value' }
the search (querystring) portion of the url, as an object
Checks the URL for a matching UrlRule
Checks the URL for a matching UrlRule
Checks the current URL for a matching url rule, then invokes that rule's handler. This method is called internally any time the URL has changed.
This effectively activates the state which matches the current URL.
urlService.deferIntercept();
$http.get('/states.json').then(function(resp) {
resp.data.forEach(state => $stateRegistry.register(state));
urlService.listen();
// Find the matching URL and invoke the handler.
urlService.sync();
});
Gets the current url string
Updates the url, or gets the current url
Gets the current url string
The URL is normalized using the internal path/search/hash values.
For example, the URL may be stored in the hash ([[HashLocationServices]]) or have a base HREF prepended ([[PushStateLocationServices]]).
The raw URL in the browser might be:
http://mysite.com/somepath/index.html#/internal/path/123?param1=foo#anchor
or
http://mysite.com/basepath/internal/path/123?param1=foo#anchor
then this method returns:
/internal/path/123?param1=foo#anchor
locationServices.url(); // "/some/path?query=value#anchor"
the current value of the url, as a string.
Updates the url, or gets the current url
Updates the url, changing it to the value in newurl
locationServices.url("/some/path?query=value#anchor", true);
This url should reflect only the new internal <a href="url.urlservice.html#path">path</a>, <a href="url.urlservice.html#search">search</a>, and <a href="url.urlservice.html#hash">hash</a> values.
It should not include the protocol, site, port, or base path of an absolute HREF.
the url (after potentially being processed)
Generated using TypeDoc
API for URL management