跳转到主要内容

菜单管理

功能定位

菜单管理维护目录、菜单和按钮三级结构,决定左侧导航、页面路由、组件路径和权限标识。它是系统功能入口的“总开关”,修改会影响所有角色。

菜单管理菜单管理

图 8-3 目录、菜单与按钮的树形维护

适用角色

系统管理员、BI 管理员和前端/后端开发人员。

页面入口

系统管理 → 菜单管理(/system/menu)。

字段说明

字段 作用
菜单名称 左侧导航显示的名称
菜单类型 目录、菜单或按钮
显示排序 同级菜单的上下顺序
权限标识 后端接口和按钮权限码,如 bi:sup:dashboard
组件路径 前端页面组件路径
路由地址 浏览器访问路径
显示状态 显示或隐藏
菜单状态 正常或停用

操作步骤

  1. 先用筛选条件定位菜单,展开目录查看子菜单和按钮。
  2. 新增目录时只填写名称、排序、图标和路由;目录不对应具体页面。
  3. 新增菜单时填写路由地址、组件路径和权限标识,并选择上级目录。
  4. 新增按钮时填写权限标识,不填写组件路径;按钮用于控制新增、修改、删除、导出等操作。
  5. 调整顺序后保存,重新登录或刷新路由缓存验证导航顺序。
  6. 隐藏旧菜单时使用“隐藏”而不是直接删除,便于回滚和历史审计。
  7. 生产环境修改前先导出菜单备份,并在测试环境验证角色授权。

输入与输出

输入是菜单树、路由、组件和权限码;输出是动态路由、左侧导航和按钮级权限。

宏澜家电示例

新增“渠道分析”菜单,放在“数据探索中心”下,路由 /bi/superset/dashboard,组件指向 Superset 承载页,权限码 bi:sup:dashboard。同时新增“导出渠道明细”按钮权限,仅授予 BI 分析师。

客户应用演示:调整“数据探索中心”子菜单顺序

业务情境: 客户希望业务人员按“仪表盘 → 数据集 → SQL → AI”顺序使用功能。

第一步:进入“系统管理 → 菜单管理”

第1步重点操作:进入“系统管理 → 菜单管理”

步骤图 46-01 第1步:进入“系统管理 → 菜单管理”。红框标出进入系统管理 → 菜单管理。

进入“系统管理 → 菜单管理”,展开数据探索中心。

第二步:记录当前菜单顺序、路由和权限标识

第2步重点操作:记录当前菜单顺序、路由和权限标识

步骤图 46-02 第2步:记录当前菜单顺序、路由和权限标识。红框标出记录当前菜单顺序、路由和权限标识。

记录当前菜单顺序、路由和权限标识,先做配置备份。

第三步:使用上移/下移或排序值调整四个子菜单

第3步重点操作:使用上移/下移或排序值调整四个子菜单

步骤图 46-03 第3步:使用上移/下移或排序值调整四个子菜单。红框标出使用上移/下移或排序值调整四个子菜单。

使用上移/下移或排序值调整四个子菜单。

第四步:保存后刷新页面

第4步重点操作:保存后刷新页面

步骤图 46-04 第4步:保存后刷新页面。红框标出保存后刷新页面。

保存后刷新页面,确认菜单顺序、图标和链接都正常。

第五步:用业务账号复核可见菜单

第5步重点操作:用业务账号复核可见菜单

步骤图 46-05 第5步:用业务账号复核可见菜单。红框标出用业务账号复核可见菜单。

用业务账号复核可见菜单,确认没有改变功能权限。

最终结果与效果

菜单按业务使用顺序显示,链接和权限保持不变;变更可在操作日志中追溯。

操作提示: 不要修改正在使用的路由和组件路径;菜单变更后应回归所有链接。

常见问题

菜单显示但点击 404。 检查路由地址、组件路径和前端构建是否包含该页面。

页面能打开但按钮全部隐藏。 检查按钮权限码是否与前端 v-hasPermi 一致。

截图里有历史菜单但导航不显示。 菜单表可能保留隐藏的旧目录;以当前左侧导航为准,不要误删仍在使用的权限节点。

开发人员参考

  • 接口:/system/menu、/system/menu/{menuId}、/system/menu/treeselect
  • 权限:system:menu:list、system:menu:add、system:menu:edit、system:menu:remove
  • 目录、菜单、按钮分别使用 M、C、F 类型。
  • 菜单变更会影响动态路由和权限缓存;发布后应清理缓存并做角色回归测试。