vue通过后端添加的路由里的component是一个空的function?

发布于 2022-09-11 23:31:38 字数 386 浏览 25 评论 0

项目是基于vue-element-admin做的,做过的童鞋可能知道里面的权限路由是前端写死的,我们现在需要从数据库读取路由并动态加上去。
然后现在的问题可以加上去了,但是component却是空的,有点不懂,写法好像也没错,寻求一下帮助,下面贴一些图。感谢各位。
image.png

image.png

image.png

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(6

各空 2022-09-18 23:31:38

没这个必要吧。请求到有权限进入的页面路由数据,写个全局的路由守卫,判断跳转的页面是否包含在权限数据里就行了。

闻呓 2022-09-18 23:31:38

需要一个闭包返回 promiss

试试这样
clipboard.png

路由里就是
component: lazyLoading(item.component)

烦人精 2022-09-18 23:31:38

我是这样实现的 loop()那段,根据后端返回结果创建一个routeList
然后:

this.$router.options.routes.push(routeList);

图片描述

浮生面具三千个 2022-09-18 23:31:38

应该是 import 语法的问题
参考 https://www.jb51.net/article/...

看element-admin的文档,作者提供了这样一个思路
https://panjiachen.github.io/...

提前导入组件,存到变量里
const map={
login:require('login/index').default // 同步的方式
login:()=>import('login/index') // 异步的方式
}
//你存在服务端的map类似于
const serviceMap=[
{ path: '/login', component: 'login', hidden: true }
]
//之后遍历这个map,动态生成asyncRoutes
并将 component 替换为 map[component]

GitHub里也有相关的问题
https://github.com/PanJiaChen...

沩ん囻菔务 2022-09-18 23:31:38

同样的问题,之后怎么解决的

全部不再 2022-09-18 23:31:38

也遇到同样的问题,最后是怎么解决的?

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文