php - vue-router中动态添加路由问题

 手哥2502852243 发布于 2022-11-28 02:00

简述

最近在研究前后台分离下基于RBAC的权限控制问题,在使用vue-router动态添加路由的时候,出现一个小问题,需要请教下各位.

大概思路如下:

  • 后台用户登录成功以后,从服务端获取该用户对应的权限列表,并存入sessionStorage中

  • 将用户重定向到后台首页

  • 在router.beforeEach()钩子中,将sessionStorage中的权限列表数据读入,并调用router.addRoutes()动态添加路由.

代码

router.beforeEach(to,from,next){...letpermission=JSON.parse(window.sessionStorage.getItem('permission'))/*permission=[...{"client_route":"/test"}...]*/if(permission){letnewRoutes=[]permission.map((item,index)=>{newRoutes.push({path:'${item.client_route}',component:'../view${item.client_route.slice(1)}.vue',meta:{Auth:true}})})router.addRoutes(newRoutes)}...}

问题来啦

  1. 思路是否有问题?

  2. 上面的代码有问题,path和component这里的${}不知道该怎么处理.原谅我es6学的不好.╮(︶﹏︶")╭.我的本意是根据返回来的路由名称去加载.vue文件

谢谢各位

1 个回答
  • es6里面用${}外面是反引号``,你的是单引号'',所以赋值失败

    2022-11-28 04:35 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有