Angular 的一些代码结构问题。我正在尝试实现分屏设计,其中左右显示不同的数据,基于不同的查询。左侧通常会指示右侧显示哪些数据。
例如:左边将有一个艺术家列表。单击艺术家时,他们的专辑列表将出现在右侧。一种有效但感觉不太正确的方法如下:
可以访问 URL 参数的“screen one”组件。在这个组件/模块中,我们导入 Artists 组件和 Projects 组件。屏幕一个组件处理对 Firestore 的查询并将它们传递给这些组件:
<div>
<app-artists [artistsArray]="artistsArray"></app-artists>
<app-albums [albumsArray]="albumsArray"></app-albums>
</div>
这工作得很好。但是,这将出现在 route 上/artists
。当点击艺术家时,路线将是/artists/:artistID
。这里棘手的部分是,在我的路由模块中,我现在有两条路由加载完全相同的模块。这是一个问题吗?路由
const routes: Routes = [
{
path: 'artists',
loadChildren: () => import('./screens/screen-one/screen-one.module').then(mod => mod.ScreenOneModule),
},
{
path: 'artists/:artistID',
loadChildren: () => import('./screens/screen-one/screen-one.module').then(mod => mod.ScreenOneModule),
},
];