情景

开发模式下路由跳转很正常,但是打包后,点击菜单路由视图并不加载,说Cannot find module

解决

  • 方法一
    component = import('@/views/' + path + '.vue')替换为:
// resolve不能省略
component = resolve => require([`@/views/${path}.vue`], resolve)
  • 方法二
    使用dynamic-import插件(这并不是一个插件的名字,插件名:babel-plugin-dynamic-import-node)。

原因

webpack 编译es6 动态引入 import() 时不能传入变量。
所以我直接将路径写全,是没有问题的,说明确实不能使用变量:

component = () => import(`@/views/sys/menu.vue`)

然后尝试使用字符串模板,依旧不行。

component = import(`@/views/${path}.vue`)
Logo

前往低代码交流专区

更多推荐