我有一种方案,其中会根据用户的网址向用户显示文件/文件夹列表。如果用户单击这些文件夹之一,则会将其深一层,并显示该文件夹的内容。
问题是导航到“更深”的URL不会提示组件重新初始化并获取该新位置的数据。我相信原因是因为我使用通配符定义路由,并且从Angular的角度来看,更改该通配符中的URL不会改变任何内容。
如果我自己输入更深的URL并重新加载应用程序,它将显示正确的数据。
路径定义:
{
path: 'Workspace',
children: [
{ path: '**', component: WorkspaceComponent },
]
}
单击后如何导航到新文件夹的位置。
goToUrl( file )
{
let url = this.Router.url;
this.Router.navigateByUrl( url+'/'+file.name );
}