有没有办法获取初始路由的url(重新加载页面时发生的路由)。
我想将css样式应用于基于它的元素。
到目前为止,我注入了ActivatedRoute控制台,如下所示:
constructor(private router: Router, private actRoute: ActivatedRouteSnapshot) {
console.log(actRoute);
然后,Chrome会显示一个包含_routerState属性的ActivatedRoute对象,该属性包含一个包含我想要的网址的快照。
问题是当我这样做时:console.log(actRoute._routerState);
我收到错误,因为路由器状态属性不存在。
我在这里遗漏了什么吗?因为只写actRoute.url
或actRoute.snapshot.url
只会给出一条空路径。
感谢。
我的进口商品:
import { Router, ActivatedRoute } from '@angular/router';
答案 0 :(得分:0)
Use Router
and following will give you the complete path:
this.router.routerState.snapshot.url
答案 1 :(得分:0)
我想出了如何仅查看第一条初始路线。
在我的event
中,我创建了一个局部变量this.router.events.subscribe
,然后将其设置为等于this.even.this.event.unsubscribe()
函数。
完成路由器后,我刚刚调用了event;
export class AppComponent implements OnInit {
constructor(private router: Router) { }
ngOnInit() {
this.event = this.router.events.subscribe((e) => {
if (e instanceof NavigationEnd) {
console.log(e);
// Doing stuff with the router
this.event.unsubscribe();
}
});
}
}
。
这是我的代码:
import { Component, OnInit } from '@angular/core';
import { Router, NavigationEnd } from '@angular/router';
我的进口商品:
{{1}}