uve-elementUI-temple模板添加动态路由

在基于Vue的模板项目中,遇到添加动态路由不生效的问题。在src/permission.js文件中添加动态路由代码后,虽然能获取到数据,但路由并未更新。尝试了网上的解决办法未果。问题根源在于layout/components/Sidebar/index.vue中,模板项目使用的方法与admin项目不同,需要调整以匹配正确的动态生成菜单的方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述

在模板项目中添加动态路由,于是仿照了admin项目添加路由 权限控制文件以后 ,在、src/permission.js文件中添加如下代码,

		  const asyncRoutes = await store.dispatch('permission/generateRoutes')
         // dynamically add accessible routes
         router.addRoutes(asyncRoutes)
         next({ ...to, replace: true })

这样添加动态路由后 router似乎并没有更新,但是打印asyncRoutes却有数据

解决办法

  1. 网上找说的router.options.router= asyncRoutes这种方式尝试后,没有效果
  2. 修改layout/components/Sidebar/index.vue 便利生成菜单的时候temple 使用的是
    <sidebar-item v-for="route in routes" :key="route.path" :item="route" :base-path="route.path" />
    但是admin 项目中确是
    <sidebar-item v-for="route in permission_routes" :key="route.path" :item="route" :base-path="route.path" />
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值