Improve this Doc View Source

## Overview

Use the `$locationProvider` to configure how the application deep linking paths are stored.

## Methods

- ###

  `hashPrefix([prefix]);`

  The default value for the prefix is `'!'`.

  #### Parameters

  Param | Type | Details
  --- | --- | ---
  prefix (optional) | string | Prefix for hash part (containing path and search)

  #### Returns

  * | current value if used as getter or itself (chaining) if used as setter

- ###

  `html5Mode([mode]);`

  #### Parameters

  Param | Type | Details
  --- | --- | ---

  mode
  (optional)

  boolean Object

  If boolean, sets `html5Mode.enabled` to value. If object, sets `enabled`, `requireBase` and `rewriteLinks` to respective values. Supported properties:
  - enabled – `{boolean}` – (default: false) If true, will rely on `history.pushState` to change urls where supported. Will fall back to hash-prefixed paths in browsers that do not support `pushState`.
  - requireBase - `{boolean}` - (default: `true`) When html5Mode is enabled, specifies whether or not a tag is required to be present. If `enabled` and `requireBase` are true, and a base tag is not present, an error will be thrown when `$location` is injected. See the $location guide for more information
  - rewriteLinks - `{boolean|string}` - (default: `true`) When html5Mode is enabled, enables/disables URL rewriting for relative links. If set to a string, URL rewriting will only happen on links with an attribute that matches the given string. For example, if set to `'internal-link'`, then the URL will only be rewritten for `<a internal-link>` links. Note that attribute name normalization does not apply here, so `'internalLink'` will not match `'internal-link'`.

  #### Returns

  Object | html5Mode object if used as getter or itself (chaining) if used as setter