我有一个vuejs 2项目,正在寻找一种方法来获取当前路由的子路由(使用typescript)。无论是this.$route
还是this.$router.currentRoute
都包含children
-prop。
有什么办法吗?
有了这些信息,我想存档自动生成选项卡(子视图)。
更新1
好了,获取子路由的解决方案如下:
this.$router.options.routes?.find((route) => route.name === this.$route.name)?.children
现在的挑战是,从一个子根开始,我首先需要得到父根。有没有什么方法可以同时得到父根和root
-Route的子根?
因此,我需要当前路由或父/根路由(如果可用)的所有子路由。
更新2
现在,我提出了以下解决方案:
this.$router.options.routes?.find((route) => route.name === this.$route.name || route.children?.find((child) => child.name === this.$route.name))?.children
如果有任何更干净/更好的解决方案,请告诉我。
2条答案
按热度按时间pkwftd7m1#
遵循我当前的解决方案:
可与以下路由配置配合使用:
brtdzjyr2#
我在Vue 3中这样做是为了获取某个菜单项的子路由: