gpt4 book ai didi

angular - 获取 Angular 6 中当前事件的子组件

转载 作者:行者123 更新时间:2023-12-02 03:27:50 25 4
gpt4 key购买 nike

我正在使用 Angular 6

我在我的应用程序中创建了一个深度路由,其中​​app.module带有组件AdminLayout的声明

@NgModule({
declarations: [
AppComponent,
AdminLayoutComponent,
],
imports: [
BrowserModule,
AppRoutingModule,
RouterModule.forRoot([]),
ComponentsModule,
]
});

进一步的AdminLayoutComponent是一个导入其中所有其他模块的模块。

@NgModule({
imports: [
...
DashboardModule
],
declarations: []
})
export class AdminLayoutModule { }

ComponentsModule 导入到 AppModule 中,我想在其中获取当前事件的组件或 URL。

因此,在 ComponentsModule 的组件内,我这样做:

constructor(
private route: ActivatedRoute
) { }

ngOnInit() {
console.log(this.route);
}

喜欢哪些游戏机

enter image description here

在这里,它的组件>名称AdminLayoutComponent,而我已经加载了DashboardComponent

如何获取当前事件的组件名称或 URL?

最佳答案

您可以使用 Router 服务获取当前 url ,每次导航时 url 都会发生变化,这样您就可以订阅路线事件以保持更新

import {  Router } from '@angular/router';

组件

constructor( private _router: Router,) { ...}

ngOnInit() {
this.router.events.subscribe(e => {
if (e instanceof NavigationStart) {
console.log(e.url);
console.log(this.router.routerState.root.snapshot.firstChild); // active component
console.log(this.router.routerState.root.snapshot.data); // route data
console.log(this.router.routerState.root.snapshot.routeConfig); // routes list
}
});
}

关于angular - 获取 Angular 6 中当前事件的子组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52704185/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com