PlatformLocation
class
npm Package | @angular/common |
---|---|
Module | import { PlatformLocation } from '@angular/common'; |
Source | common/src/location/platform_location.ts |
Overview
class PlatformLocation { getBaseHrefFromDOM(): string onPopState(fn: LocationChangeListener): void onHashChange(fn: LocationChangeListener): void get pathname: string get search: string get hash: string replaceState(state: any, title: string, url: string): void pushState(state: any, title: string, url: string): void forward(): void back(): void }
Description
This class should not be used directly by an application developer. Instead, use Location
.
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.
Members
getBaseHrefFromDOM(): string
onPopState(fn: LocationChangeListener): void
onHashChange(fn: LocationChangeListener): void
get pathname: string
get search: string
get hash: string
replaceState(state: any, title: string, url: string): void
pushState(state: any, title: string, url: string): void
forward(): void
back(): void
© 2010–2018 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v5.angular.io/api/common/PlatformLocation