現在のURLは http:// localhost:4200/test/dashboard です。
ベースURL、つまり http:// localhost:42 を使用して、angular 5つの機能を使用します。
console.log(location);
console.log(location.href);
ベースURLを取得するには:console.log(location.Origin);
angular固有の機能は必要ありません。window.location.Origin
がそれを行います。
PlatformLocationは、URLに関する詳細を提供します。
import {PlatformLocation } from '@angular/common';
constructor(platformLocation: PlatformLocation) {
console.log((platformLocation as any).location);
console.log((platformLocation as any).location.href);
console.log((platformLocation as any).location.Origin);
}
これは私には機能しません(Angular 7):
this.location.path.name
しかし、ドキュメントから取得することが可能であることがわかりました。
import { Inject } from '@angular/core';
import { DOCUMENT } from '@angular/common';
constructor(@Inject(DOCUMENT) private document: Document) {
const Origin = this.document.location.Origin;
}
「common」パッケージから「Location」をインポートできます。
import { Component, OnInit } from '@angular/core';
import { Location } from '@angular/common'; // <--- Here
import { Router } from '@angular/router';
@Component({
selector: 'some-component',
templateUrl: './component.html',
styleUrls: ['./component.scss']
})
export class SomeComponent implements OnInit {
constructor(location: Location) {}
ngOnInit() {
console.log(this.location.Origin); // <--- Use Here
}
}
試すことができます(現在の場所のすべての詳細を取得できます)
import { Component, OnInit } from '@angular/core';
import { Location } from '@angular/common';
@Component({
selector: 'some-component',
templateUrl: './component.html',
styleUrls: ['./component.scss']
})
export class SomeComponent implements OnInit {
constructor(location: Location) {}
ngOnInit() {
console.log(this.location._platformStrategy._platformLocation.location);
}
}
私はRotemyaの回答をこのように使用しました
import { Location } from '@angular/common';
constructor(public location: Location) { }
しかし、this.location.Originはうまくいきませんでした。だから私はthis.location.path.nameを使用しました
ngOnInit() {
console.log(this.location.path.name);
}