我正在开发一个网站,用于以仪表板的形式管理信息。 每个仪表板的URL都为/ dashboard / something1 / something2,/ dashboard / something3 / something4。我一直在尝试找到一种解决方案,该解决方案可以通过基于url调用API来动态处理每个url,并在同一组件中显示数据,但是似乎都无法正常工作。
我已经尝试过ActivatedRoute,但我读到它是<router-outlet>
以外的内容,因此可能会返回空url。
我也尝试过activatedRoute.snapshot['_routerState'].url
,但我认为这不是处理它的正确方法。
我也在尝试只使用router.url
import { Component, OnInit } from '@angular/core';
import { Router, NavigationEnd } from '@angular/router';
@Component({
selector: 'ngx-dashboard',
templateUrl: './dashboard.component.html',
styleUrls: ['./dashboard.component.scss'],
})
export class DashboardComponent implements OnInit {
data: string;
constructor(private router: Router) {
this.router.events.subscribe(e => {
if (e instanceof NavigationEnd) {
this.url = this.router.url;
//then use the url params to call APIs and fill in data
}
});
}
ngOnInit() {}
}
获取每条路线的url的正确方法是什么?对于我来说,在一般情况下动态地处理同一组件中的不同视图是否还有其他解决方案?