PlatformLocation

class

This class should not be used directly by an application developer. Instead, use Location.

See more...

abstract class PlatformLocation {
  abstract pathname: string
  abstract search: string
  abstract hash: string
  abstract getBaseHrefFromDOM(): string
  abstract onPopState(fn: LocationChangeListener): void
  abstract onHashChange(fn: LocationChangeListener): void
  abstract replaceState(state: any, title: string, url: string): void
  abstract pushState(state: any, title: string, url: string): void
  abstract forward(): void
  abstract back(): void
}

Description

PlatformLocation encapsulates all calls to DOM apis, which allows the Router to be platform agnostic. This means that we can have different implementation of PlatformLocation for the different platforms that angular supports. For example, @angular/platform-browser provides an implementation specific to the browser environment, while @angular/platform-webworker provides one suitable for use with web workers.

The PlatformLocation class is used directly by all implementations of LocationStrategy when they need to interact with the DOM apis like pushState, popState, etc...

LocationStrategy

in turn is used by the Location service which is used directly by the Router in order to navigate between routes. Since all interactions between Router / Location / LocationStrategy and DOM apis flow through the PlatformLocation class they are all platform independent.

Properties

Property Description
abstract pathname: string Read-only.
abstract search: string Read-only.
abstract hash: string Read-only.

Methods

abstract getBaseHrefFromDOM(): string

Parameters

There are no parameters.

Returns

string

abstract onPopState(fn: LocationChangeListener): void

Parameters
fn LocationChangeListener
Returns

void

abstract onHashChange(fn: LocationChangeListener): void

Parameters
fn LocationChangeListener
Returns

void

abstract replaceState(state: any, title: string, url: string): void

Parameters
state any
title string
url string
Returns

void

abstract pushState(state: any, title: string, url: string): void

Parameters
state any
title string
url string
Returns

void

abstract forward(): void

Parameters

There are no parameters.

Returns

void

abstract back(): void

Parameters

There are no parameters.

Returns

void

© 2010–2019 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v7.angular.io/api/common/PlatformLocation