【发布时间】:2018-05-07 09:31:55
【问题描述】:
我创建了一个导航栏,据我所知,我必须为每个页面和子页面创建一个组件。如果你有很多导航选项,每个选项都有子导航选项,如图所示,那么创建很多组件似乎是多余的。
真的有必要创建 20 多个组件吗?什么是正常的 Angular 结构,如何处理?
【问题讨论】:
-
图片不见了
标签: html angular navigation navbar
我创建了一个导航栏,据我所知,我必须为每个页面和子页面创建一个组件。如果你有很多导航选项,每个选项都有子导航选项,如图所示,那么创建很多组件似乎是多余的。
真的有必要创建 20 多个组件吗?什么是正常的 Angular 结构,如何处理?
【问题讨论】:
标签: html angular navigation navbar
是的,为每个页面创建组件是一种常见且良好的做法。 如果您根据参数提供内容(在您的情况下,它看起来像一个 url 参数),您可以配置路由以接受参数:
{ path: 'article/:articleId', component: ArticleComponent }
然后,在组件中做:
constructor(private route: ActivatedRoute) { }
ngOnInit() {
this.route.params.subscribe((params) => {
// get your article with id params[articleId]
});
}
这将帮助您处理参数化路线。
您可以使用它来创建页面“组合”,然后每个子页面将重定向到具有不同参数(网页设计、图形设计等)的同一组件
【讨论】: