我是否可以访问VUE路由解析器,以便在导航到链接之前对其进行判断?即:

假设我有路径/one/two/three,但现在的路径是not.我想查看该路径是否与我的路由文件中的内容匹配,并获取匹配的对象.

例如,假设上面的路径匹配:

{
  path: `/one/:user/:page`,
  name: "path-one",
  component: () => import('../views/DashboardPage.vue'),
  meta: { etc... }
},

我想这样称呼它:

const match = useRouter().parse("/one/two/three")

上面的 struct 有match个.

我猜路由中存在该功能,但我看不出它是公开的.

问这个问题的另一种方式是,我想要useRoute的结果,但对于任意URL,不要让它使用当前路径.

推荐答案

它是useRouter上的resolve函数.返回一个RouteLocation对象,该对象将具有一个matched属性,其中包含来自您的路由文件的匹配的路由记录.

const matches = useRouter().resolve("/one/two/three").matched // empty array if no matches

Vue.js相关问答推荐

当用户在嵌套路由中时激活链接

如果单元格不可见,则以编程方式打开行的编辑模式. Ag 网格,Vue.js

将函数作为属性传递给 Vue 组件

webpack vue-loader 配置

使用数组元素的计算(computed)属性

使用 Vue Js 运行 Jest 测试时出现语法错误:无法在模块外使用 import 语句

在组件上的 Vue 3 中获取 URL 查询参数

如何创建 vuetify 工具栏链接下拉菜单?

Vue 3 - 带有全局组件的无法解析组件

vue-router的router-link实际刷新?

错误 [ERR_UNSUPPORTED_ESM_URL_SCHEME]:默认 ESM 加载器仅支持文件和数据 URL - Vue 3

如何在 vue 3 中获取路由的参数?

Vuejs模板继承

如何在 Vue3 设置标签中定义组件名称?

如何使用 JavaScript 按索引删除数组元素?

如何将事件绑定到 Vuetify 中的树视图 node ?

Vue Chart.js - 条形图上的简单点/线

Vuejs获取事件正在调用的元素?

如何从扩展面板(Vuetify)中删除阴影?

Vue - 重用方法的最佳方式