Vue.js vue路由器:如何检查当前路由是路由还是其子路由之一?
我正在包装路由器链接以添加一些功能 我需要检查一下当前路线是一条路线还是一条路线的地铁 类似于下面的内容 我知道它不能工作,因为:active需要一个布尔值,但是javascript String.match返回一个数组;:这是为了解释我的目标 在我的router.js中,我定义了Vue.js vue路由器:如何检查当前路由是路由还是其子路由之一?,vue.js,vue-router,Vue.js,Vue Router,我正在包装路由器链接以添加一些功能 我需要检查一下当前路线是一条路线还是一条路线的地铁 类似于下面的内容 我知道它不能工作,因为:active需要一个布尔值,但是javascript String.match返回一个数组;:这是为了解释我的目标 在我的router.js中,我定义了/customer/{customer\u id}/users命名为customer\u users,/customer/{customer\u id}/users/{user\u id}命名为customer\u u
/customer/{customer\u id}/users
命名为customer\u users
,/customer/{customer\u id}/users/{user\u id}
命名为customer\u users\u edit
因此,我希望能够在我的包装中为这两个路由设置“:active”。使用
$route.matched
属性查看当前路由是您的客户用户还是其任何子用户
例如,使用
:active=“$route.matched.some({name})=>name=='customer\u users')”
看
$route.matched
类型:数组
包含当前路由的所有嵌套路径段的路由记录的数组
你不能在那里写一个布尔表达式吗?类似于$route.name.match('customer\u users*).length()>0
Yes和no,因为我还需要在检查匹配项的长度fyi之前检查匹配项是否为null,所以您要查找的regex方法是RegExp.prototype.test()
,例如/^customer\u users./.test($route.name)
,但是有更好的方法可以做到这一点
:active="$route.name.match('customer_users*')"