是否有非手动方式来创建Angular 6路由器路径的类似目录的结构?

前端之家收集整理的这篇文章主要介绍了是否有非手动方式来创建Angular 6路由器路径的类似目录的结构?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在设置一个Angular 6应用程序.组件使用类似目录的结构,目录可以包含其他目录,嵌套就像它们在磁盘上一样.该组件将显示目录中的内容列表,包括文件和其他目录,如果用户单击目录,我希望应用程序嵌套一个级别,并使URL反映该级别.换句话说,我希望路由器将状态信息保存在URL中,以便用户可以使用浏览器中的后退按钮并进行其他正常导航.

我可以使用路由器模块中的以下代码完成此操作:

{ path: 'show-dir/:dir1',component: ViewDirectoryComponent },{ path: 'show-dir/:dir1/:dir2',{ path: 'show-dir/:dir1/:dir2/:dir3',{ path: 'show-dir/:dir1/:dir2/:dir3/:dir4',component: ViewDirectoryComponent }
....

但是,这是有限的,因为我手动输入每个级别,并且不希望有100个手动条目(然后限制100个嵌套目录…)

有没有更好的方法来实现这一目标?

谢谢你的帮助.

解决方法

有趣的问题.也许如果将所有这些路径配置为子路径,您可以完成所需而无需手动重复路径.

就像是:

{
    path: 'show-dir',children: [
        { path: '**',component: ViewDirectoryComponent }
    ]
}

您有root show-dir路径,对于您指定的子目录**将匹配任何路由并加载视图目录组件.使用ActivatedRoute获取并解析URL以显示相关内容.

猜你在找的Angularjs相关文章