也许我错过了什么?
在Angular 2组件中,我只是想获得完整的激活路线。
我不想使用location.href
。
我的构造函数如下:
constructor(private route: ActivatedRoute) {}
在ngOnInit()
我尝试在这里找到值无效:
this.route.data.url
任何帮助都非常感谢。
答案 0 :(得分:9)
您不需要使用ActivatedRoute
,您需要使用Router以字符串形式查询当前网址:
constructor(r: Router) {
console.log(r.url);
}
答案 1 :(得分:4)
更简单的解决方案是使用@angular/common
中的LocationStrategy类直接从浏览器的URL表示和读取路由状态,这比尝试以路由器URL形式获取路由器URL时更方便this.router.url
字符串。
import {LocationStrategy} from '@angular/common';
export class MyComponent implements OnInit {
constructor(private url:LocationStrategy) { }
ngOnInit() {
//this will log the current url
console.log(this.url.path());
}
}