Vue Router 怎么结合接口数据动态生成侧边栏菜单

夏萱小哥_9270

夏萱小哥_9270

2026-10-20

612人浏览

原创

vue router 动态生成侧边栏菜单的核心是解耦路由配置与菜单渲染,以后端返回的树形菜单数据为唯一可信源,包含 path、name、meta.title、meta.icon、component、children 和 hidden 字段;登录后依次请求菜单、动态导入组件、注册路由、存入状态管理并渲染;菜单通过 el-menu 的 to 绑定路由,高亮由 $route.path 自动匹配;刷新时需缓存菜单至 sessionstorage 并在路由守卫中恢复,退出时清空缓存并重置路由。

vue router 怎么结合接口数据动态生成侧边栏菜单

Vue Router 结合接口数据动态生成侧边栏菜单,核心在于「路由配置」和「菜单渲染」解耦,用后端返回的菜单结构驱动前端路由注册与菜单展示。整个流程不依赖硬编码菜单项,而是让接口数据成为唯一可信源。

后端返回菜单数据的格式要求

接口需返回符合前端解析逻辑的树形结构(通常为 JSON 数组),每个节点至少包含以下字段:

  • path:完整路径(如 /user/list),用于路由跳转和匹配
  • name:路由唯一名称(可选,但建议提供,便于编程式导航)
  • meta.title:菜单显示文字(如 “用户列表”)
  • meta.icon:图标类名(如 el-icon-user 或自定义 SVG class)
  • component:组件路径字符串(如 user/index),前端需将其转换为实际组件对象
  • children:子菜单数组(支持二级,一般不建议超过两级)
  • hidden:布尔值,控制是否在菜单中隐藏(如详情页、重定向页)

前端关键处理步骤

登录成功后,前端需完成三件事:请求菜单 → 转换 component → 注册路由 → 渲染菜单。

vue-composition-api-best-practices
vue-composition-api-best-practices

Vue 3 组合式 API 与

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Vue 教程
Vue 教程

共42课时 | 17.2万人学习

国外Web开发全栈课程全集
国外Web开发全栈课程全集

共12课时 | 1.4万人学习

Vue.js 微实战--十天技能课堂
Vue.js 微实战--十天技能课堂

共18课时 | 1.7万人学习