部署项目报错

vue2项目部署后 Error: Cannot find module '@/views/*** '

1.起因

登录页、首页等静态页面可以正常进入,后端访问也正常,可以获取到验证码。

但是登录之后会发现首页空白或者进入不到首页

F12查看有报错信息:Error: Cannot find module '@/views/xxx'

2. 问题造成

简单来说就是webpack版本造成的问题

webpack4 不支持变量方式的动态 import ,新版本的使用 require() 来解决此问题。

查看webpack版本

npm info webpack

3. 解决

找到 src/permission.js文件 loadView方法(是用来加载动态页面的)

javascript 复制代码
export const loadView = (view) => {
  if (process.env.NODE_ENV === 'development') {
    return (resolve) => require([`@/views/${view}`], resolve);
  } else {
    // 使用 import 实现生产环境的路由懒加载
    // return () => import(`@/views/${view}`)
    return (resolve) => require([`@/views/${view}`], resolve);
  }
};

检查动态加载路由是否用

return () => import(`@/views/${view}`)

改成

return (resolve) => require([`@/views/${view}`], resolve)

重新部署即可解决

相关推荐
0思必得03 小时前
[Web自动化] Selenium浏览器复用
前端·python·selenium·自动化
之歆3 小时前
Linux 系统安装、故障排除、sudo、加密、DNS 与 Web 服务整理
linux·运维·前端
OpenTiny社区3 小时前
TinyEngine 2.10 版本发布:零代码 CRUD、云端协作,开发效率再升级!
前端·vue.js·低代码
哟哟-3 小时前
Nginx配置:静态文件访问时动态添加时间戳
运维·前端·javascript·nginx
码云数智-园园3 小时前
自助建站哪个好?三款主流自助建站对比评测
前端
肆忆_3 小时前
C++ 汇编层面与语法语义层面总结:this指针 模板 块级作用域 引用
前端
用户4099322502123 小时前
Vue中默认插槽、具名插槽、作用域插槽如何区分与使用?
前端·vue.js·github
zheshiyangyang4 小时前
前端面试基础知识整理【Day-3】
前端·word
用户98236107902774 小时前
Vite 项目优化分包填坑之依赖多版本冲突问题深度解析与解决方案
前端
陆枫Larry4 小时前
深入浅出:CSS 中的“隐形结界”——BFC 详解
前端·css