gpt4 book ai didi

angular - 如何知道 Angular 5 及以上版本的 router-outlet 中加载了哪个组件

转载 作者:行者123 更新时间:2023-12-02 10:32:19 26 4
gpt4 key购买 nike

这是我的 ap.component.html

<app-header></app-header>
<router-outlet></router-outlet>
<app-footer></app-footer>

如何知道 Router Outlet 中加载了哪个组件,然后根据组件在 header 或 body 上添加一个类。

就像加载 Home 一样,然后在主体上添加一个 home 类。或者如果 404 页面则在 body 上找不到类

我的路由

const routes: Routes = [
{ path: '' , component: HomeComponent},
{ path: 'directory' , component: DirectoryComponent },
{ path: 'directory/:slug' , component: DirectorySingleComponent },
{ path: 'pricing' ,component: PricingComponent },
{ path: 'services' , component: ServicesComponent },
{ path: '', pathMatch: 'full', redirectTo: '/' },
{ path: '**', component: NotfoundComponent}
];

最佳答案

您需要在组件内部处理这个问题,或者基于变量,您可以使用路由器的 url 属性来获取当前组件的 url

constructor(router: Router) {
this.router.events.subscribe((event: Event) => {
console.log(event.url); //based on this change class
});
}

关于angular - 如何知道 Angular 5 及以上版本的 router-outlet 中加载了哪个组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49720164/

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