class
This class should not be used directly by an application developer. Instead, use Location
.
abstract class PlatformLocation { abstract href: string abstract protocol: string abstract hostname: string abstract port: string abstract pathname: string abstract search: string abstract hash: string abstract getBaseHrefFromDOM(): string abstract getState(): unknown 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 }
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-server
provides one suitable for use with server-side rendering.
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-agnostic.
Property | Description |
---|---|
abstract href: string | Read-Only |
abstract protocol: string | Read-Only |
abstract hostname: string | Read-Only |
abstract port: string | Read-Only |
abstract pathname: string | Read-Only |
abstract search: string | Read-Only |
abstract hash: string | Read-Only |
getBaseHrefFromDOM() |
---|
|
getState() |
---|
|
onPopState() | |||
---|---|---|---|
|
fn | LocationChangeListener |
void
onHashChange() | |||
---|---|---|---|
|
fn | LocationChangeListener |
void
replaceState() | |||||||||
---|---|---|---|---|---|---|---|---|---|
|
state | any | |
title | string | |
url | string |
void
pushState() | |||||||||
---|---|---|---|---|---|---|---|---|---|
|
state | any | |
title | string | |
url | string |
void
forward() |
---|
|
back() |
---|
|
© 2010–2020 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://v10.angular.io/api/common/PlatformLocation