vueRouter重置路由

1.v3

javascript 复制代码
import VueRouter from 'vue-router'

// 假设 constantRoutes 是你的基础静态路由
import { constantRoutes } from './routes'

export function resetRouter() {
  const freshRouter = new VueRouter({ mode: 'history', routes: constantRoutes })
  router.matcher = freshRouter.matcher // 替换 matcher,达到重置目的
}

2.v4

javascript 复制代码
import { createRouter, createWebHistory } from 'vue-router'
const resetRouter = () => {
  const newRouter = createRouter({ history: createWebHistory(), routes: [...] })
  router.matcher = newRouter.matcher
}

v4 提供了单条路由的删减api

javascript 复制代码
import { createRouter, createWebHistory } from 'vue-router'
import router from './router'
import constantRoutes from './constantRoutes'

export const resetRouter = () => {
  router.getRoutes().forEach(r => router.removeRoute(r.name))

  // 视需要补齐静态基础路由
  constantRoutes.forEach(r => {
    if (!router.hasRoute(r.name)) router.addRoute(r)
  })
}
相关推荐
Byron070711 小时前
Vue 中使用 Tiptap 富文本编辑器的完整指南
前端·javascript·vue.js
css趣多多11 小时前
地图快速上手
前端
zhengfei61112 小时前
面向攻击性安全专业人员的一体化浏览器扩展程序[特殊字符]
前端·chrome·safari
码丁_11712 小时前
为什么前端需要做优化?
前端
Mr Xu_12 小时前
告别硬编码:前端项目中配置驱动的实战优化指南
前端·javascript·数据结构
Byron070713 小时前
从 0 到 1 搭建 Vue 前端工程化体系:提效、提质、降本实战落地
前端·javascript·vue.js
哆啦code梦13 小时前
前端存储三剑客:localStorage、sessionStorage与Cookie解析
前端·前端存储
zhengfei61113 小时前
【AI平台】- 基于大模型的知识库与知识图谱智能体开发平台
vue.js·语言模型·langchain·知识图谱·多分类
徐小夕@趣谈前端13 小时前
Web文档的“Office时刻“:jitword共建版2.0发布!让浏览器变成本地生产力
前端·数据结构·vue.js·算法·开源·编辑器·es6
Data_Journal13 小时前
如何使用 Python 解析 JSON 数据
大数据·开发语言·前端·数据库·人工智能·php