W3cubDocs

/Angular 4 TypeScript

PathLocationStrategy

Stable Class

What it does

Use URL for storing application location data.

Class Overview

class PathLocationStrategy extends LocationStrategy {
  constructor(_platformLocation: PlatformLocation, href?: string)
  
  
  onPopState(fn: LocationChangeListener) : void
  getBaseHref() : string
  prepareExternalUrl(internal: string) : string
  path(includeHash?: boolean) : string
  pushState(state: any, title: string, url: string, queryParams: string)
  replaceState(state: any, title: string, url: string, queryParams: string)
  forward() : void
  back() : void
}

Class Description

PathLocationStrategy is a LocationStrategy used to configure the Location service to represent its state in the path of the browser's URL.

If you're using PathLocationStrategy, you must provide a APP_BASE_HREF or add a base element to the document. This URL prefix that will be preserved when generating and recognizing URLs.

For instance, if you provide an APP_BASE_HREF of '/my/app' and call location.go('/foo'), the browser's URL will become example.com/my/app/foo.

Similarly, if you add <base href='/my/app'/> to the document and call location.go('/foo'), the browser's URL will become example.com/my/app/foo.

Example

import {Location, LocationStrategy, PathLocationStrategy} from '@angular/common';
import {Component} from '@angular/core';

@Component({
  selector: 'path-location',
  providers: [Location, {provide: LocationStrategy, useClass: PathLocationStrategy}],
  template: `
    <h1>PathLocationStrategy</h1>
    Current URL is: <code>{{location.path()}}</code><br>
    Normalize: <code>/foo/bar/</code> is: <code>{{location.normalize('foo/bar')}}</code><br>
  `
})
export class PathLocationComponent {
  location: Location;
  constructor(location: Location) { this.location = location; }
}

Annotations

@Injectable()

Constructor

constructor(_platformLocation: PlatformLocation, href?: string)

Class Details

onPopState(fn: LocationChangeListener) : void
getBaseHref() : string
prepareExternalUrl(internal: string) : string
path(includeHash?: boolean) : string
pushState(state: any, title: string, url: string, queryParams: string)
replaceState(state: any, title: string, url: string, queryParams: string)
forward() : void
back() : void

exported from common/index, defined in common/src/location/path_location_strategy.ts

© 2010–2017 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://angular.io/docs/ts/latest/api/common/index/PathLocationStrategy-class.html