填写这份《一分钟调查》,帮我们(开发组)做得更好!去填写Home

$locationShim

Location service that provides a drop-in replacement for the $location service provided in AngularJS.

      
      class $locationShim {
  constructor($injector: any, location: Location, platformLocation: PlatformLocation, urlCodec: UrlCodec, locationStrategy: LocationStrategy)
  onChange(fn: (url: string, state: unknown, oldUrl: string, oldState: unknown) => void, err: (e: Error) => void = (e: Error) => { })
  $$parse(url: string)
  $$parseLinkUrl(url: string, relHref?: string): boolean
  absUrl(): string
  url(url?: string): string | this
  protocol(): string
  host(): string
  port(): number | null
  path(path?: string | number): string | this
  search(search?: string | number | { [key: string]: unknown; }, paramValue?: string | number | boolean | string[]): {...}
  hash(hash?: string | number): string | this
  replace(): this
  state(state?: unknown): unknown | this
}
    

参见

构造函数

constructor($injector: any, location: Location, platformLocation: PlatformLocation, urlCodec: UrlCodec, locationStrategy: LocationStrategy)
      
      constructor($injector: any, location: Location, platformLocation: PlatformLocation, urlCodec: UrlCodec, locationStrategy: LocationStrategy)
    
参数
$injector any
location Location
platformLocation PlatformLocation
urlCodec UrlCodec
locationStrategy LocationStrategy

方法

Registers listeners for URL changes. This API is used to catch updates performed by the AngularJS framework. These changes are a subset of the $locationChangeStart and $locationChangeSuccess events which fire when AngularJS updates its internally-referenced version of the browser URL.

onChange(fn: (url: string, state: unknown, oldUrl: string, oldState: unknown) => void, err: (e: Error) => void = (e: Error) => { })
      
      onChange(fn: (url: string, state: unknown, oldUrl: string, oldState: unknown) => void, err: (e: Error) => void = (e: Error) => { })
    
参数
fn (url: string, state: unknown, oldUrl: string, oldState: unknown) => void

The callback function that is triggered for the listener when the URL changes.

err (e: Error) => void

可选. 默认值是 (e: Error) => { }.

The callback function that is triggered when an error occurs.

It's possible for $locationChange events to happen, but for the browser URL (window.location) to remain unchanged. This onChange callback will fire only when AngularJS actually updates the browser URL (window.location).

Parses the provided URL, and sets the current URL to the parsed result.

$$parse(url: string)
      
      $$parse(url: string)
    
参数
url string

The URL string.

Parses the provided URL and its relative URL.

$$parseLinkUrl(url: string, relHref?: string): boolean
      
      $$parseLinkUrl(url: string, relHref?: string): boolean
    
参数
url string

The full URL string.

relHref string

可选. 默认值是 undefined.

A URL string relative to the full URL string.

返回值

boolean

Retrieves the full URL representation with all segments encoded according to rules specified in RFC 3986.

absUrl(): string
      
      absUrl(): string
    
参数

没有参数。

返回值

string

// given URL http://example.com/#/some/path?foo=bar&baz=xoxo let absUrl = $location.absUrl(); // => "http://example.com/#/some/path?foo=bar&baz=xoxo"
      
      // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
let absUrl = $location.absUrl();
// => "http://example.com/#/some/path?foo=bar&baz=xoxo"
    

Retrieves the current URL, or sets a new URL. When setting a URL, changes the path, search, and hash, and returns a reference to its own instance.

url(): string
      
      url(): string
    
参数

没有参数。

返回值

string

url(url: string): this
      
      url(url: string): this
    
参数
url string
返回值

this

// given URL http://example.com/#/some/path?foo=bar&baz=xoxo let url = $location.url(); // => "/some/path?foo=bar&baz=xoxo"
      
      // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
let url = $location.url();
// => "/some/path?foo=bar&baz=xoxo"
    

Retrieves the protocol of the current URL.

protocol(): string
      
      protocol(): string
    
参数

没有参数。

返回值

string

// given URL http://example.com/#/some/path?foo=bar&baz=xoxo let protocol = $location.protocol(); // => "http"
      
      // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
let protocol = $location.protocol();
// => "http"
    

Retrieves the protocol of the current URL.

host(): string
      
      host(): string
    
参数

没有参数。

返回值

string

In contrast to the non-AngularJS version location.host which returns hostname:port, this returns the hostname portion only.

// given URL http://example.com/#/some/path?foo=bar&baz=xoxo let host = $location.host(); // => "example.com" // given URL http://user:[email protected]:8080/#/some/path?foo=bar&baz=xoxo host = $location.host(); // => "example.com" host = location.host; // => "example.com:8080"
      
      // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
let host = $location.host();
// => "example.com"

// given URL http://user:[email protected]:8080/#/some/path?foo=bar&baz=xoxo
host = $location.host();
// => "example.com"
host = location.host;
// => "example.com:8080"
    

Retrieves the port of the current URL.

port(): number | null
      
      port(): number | null
    
参数

没有参数。

返回值

number | null

// given URL http://example.com/#/some/path?foo=bar&baz=xoxo let port = $location.port(); // => 80
      
      // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
let port = $location.port();
// => 80
    

Retrieves the path of the current URL, or changes the path and returns a reference to its own instance.

path(): string
      
      path(): string
    
参数

没有参数。

返回值

string

path(path: string | number): this
      
      path(path: string | number): this
    
参数
path string | number
返回值

this

Paths should always begin with forward slash (/). This method adds the forward slash if it is missing.

// given URL http://example.com/#/some/path?foo=bar&baz=xoxo let path = $location.path(); // => "/some/path"
      
      // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
let path = $location.path();
// => "/some/path"
    
Overload #1

Retrieves a map of the search parameters of the current URL, or changes a search part and returns a reference to its own instance.

search(): { [key: string]: unknown; }
      
      search(): {
    [key: string]: unknown;
}
    
参数

没有参数。

返回值

`{

}: The parsedsearchobject of the current URL, or the changedsearch` object.


Overload #2
search(search: string | number | { [key: string]: unknown; }): this
      
      search(search: string | number | { [key: string]: unknown; }): this
    
参数
search string | number | { [key: string]: unknown; }
返回值

this


Overload #3
search(search: string | number | { [key: string]: unknown; }, paramValue: string | number | boolean | string[]): this
      
      search(search: string | number | { [key: string]: unknown; }, paramValue: string | number | boolean | string[]): this
    
参数
search string | number | { [key: string]: unknown; }
paramValue string | number | boolean | string[]
返回值

this

// given URL http://example.com/#/some/path?foo=bar&baz=xoxo let searchObject = $location.search(); // => {foo: 'bar', baz: 'xoxo'} // set foo to 'yipee' $location.search('foo', 'yipee'); // $location.search() => {foo: 'yipee', baz: 'xoxo'}
      
      // given URL http://example.com/#/some/path?foo=bar&baz=xoxo
let searchObject = $location.search();
// => {foo: 'bar', baz: 'xoxo'}

// set foo to 'yipee'
$location.search('foo', 'yipee');
// $location.search() => {foo: 'yipee', baz: 'xoxo'}
    

Retrieves the current hash fragment, or changes the hash fragment and returns a reference to its own instance.

hash(): string
      
      hash(): string
    
参数

没有参数。

返回值

string

hash(hash: string | number): this
      
      hash(hash: string | number): this
    
参数
hash string | number
返回值

this

// given URL http://example.com/#/some/path?foo=bar&baz=xoxo#hashValue let hash = $location.hash(); // => "hashValue"
      
      // given URL http://example.com/#/some/path?foo=bar&baz=xoxo#hashValue
let hash = $location.hash();
// => "hashValue"
    

Changes to $location during the current $digest will replace the current history record, instead of adding a new one.

replace(): this
      
      replace(): this
    
参数

没有参数。

返回值

this

Retrieves the history state object when called without any parameter.

state(): unknown
      
      state(): unknown
    
参数

没有参数。

返回值

unknown

state(state: unknown): this
      
      state(state: unknown): this
    
参数
state unknown
返回值

this

Change the history state object when called with one parameter and return $location. The state object is later passed to pushState or replaceState.

This method is supported only in HTML5 mode and only in browsers supporting the HTML5 History API methods such as pushState and replaceState. If you need to support older browsers (like IE9 or Android < 4.0), don't use this method.