dmc*_*dle 5 angular angular-router angular6
我正在设置一个Angular 6应用程序.组件使用类似目录的结构,目录可以包含其他目录,嵌套就像它们在磁盘上一样.该组件将显示目录中的内容列表,包括文件和其他目录,如果用户单击目录,我希望应用程序嵌套一个级别,并使URL反映该级别.换句话说,我希望路由器将状态信息保存在URL中,以便用户可以使用浏览器中的后退按钮并进行其他正常导航.
我可以使用路由器模块中的以下代码完成此操作:
{ path: 'show-dir/:dir1', component: ViewDirectoryComponent },
{ path: 'show-dir/:dir1/:dir2', component: ViewDirectoryComponent },
{ path: 'show-dir/:dir1/:dir2/:dir3', component: ViewDirectoryComponent },
{ path: 'show-dir/:dir1/:dir2/:dir3/:dir4', component: ViewDirectoryComponent }
....
Run Code Online (Sandbox Code Playgroud)
但是,这是有限的,因为我手动输入每个级别,并且不希望有100个手动条目(然后限制100个嵌套目录...)
有没有更好的方法来实现这一目标?
谢谢你的帮助.
有趣的问题。也许如果您将所有这些路径配置为根路径的子路径,您就可以完成所需的任务,而无需手动重复路径。
就像是:
{
path: 'show-dir', children: [
{ path: '**', component: ViewDirectoryComponent }
]
}
Run Code Online (Sandbox Code Playgroud)
您拥有根show-dir路径,并且对于子级,您指定 ** ,它将匹配任何路由并加载视图目录组件。使用ActivatedRoute获取并解析url以显示相关内容。
| 归档时间: |
|
| 查看次数: |
78 次 |
| 最近记录: |