Defines whether URL matching should be case sensitive (the default behavior), or not.
// Allow case insensitive url matches
urlService.config.caseInsensitive(true);
false
to match URL in a case sensitive manner; otherwise true
;
the current value of caseInsensitive
Sets the default behavior when generating or matching URLs with default parameter values.
// Remove default parameter values from the url
urlService.config.defaultSquashPolicy(true);
A string that defines the default parameter URL squashing behavior.
nosquash
: When generating an href with a default parameter value, do not squash the parameter value from the URLslash
: When generating an href with a default parameter value, squash (remove) the parameter value, and, if the
parameter is surrounded by slashes, squash (remove) one slash from the URLthe current value of defaultSquashPolicy
Defines whether URLs should match trailing slashes, or not (the default behavior).
// Allow optional trailing slashes
urlService.config.strictMode(false);
false
to match trailing slashes in URLs, otherwise true
.
the current value of strictMode
Creates and registers a custom [[ParamType]] object
A custom parameter type can be used to generate URLs with typed parameters or custom encoding/decoding.
// Encode object parameter as JSON string
urlService.config.type('myjson', {
encode: (obj) => JSON.stringify(obj),
decode: (str) => JSON.parse(str),
is: (val) => typeof(val) === 'object',
pattern: /[^/]+/,
equals: (a, b) => _.isEqual(a, b),
});
See [[ParamTypeDefinition]] for more examples
The type name.
The type definition. See [[ParamTypeDefinition]] for information on the values accepted.
A function that is injected before the app runtime starts.
The result of this function should be a [[ParamTypeDefinition]].
The result is merged into the existing definition
.
See [[ParamType]] for information on the values accepted.
if only the name
parameter was specified: the currently registered [[ParamType]] object, or undefined
An API to customize the URL behavior and retrieve URL configuration
This API is used to customize the behavior of the URL. This includes optional trailing slashes ([[strictMode]]), case sensitivity ([[caseInsensitive]]), and custom parameter encoding (custom [[type]]).
It also has information about the location (url) configuration such as [[port]] and [[baseHref]]. This information can be used to build absolute URLs, such as
https://example.com:443/basepath/state/substate?param1=a#hashvalue
;This API is found at
router.urlService.config
(see: [[UIRouter.urlService]], [[URLService.config]])