部署项目报错

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)

重新部署即可解决

相关推荐
Kayshen5 分钟前
我在设计工具里实现了一个 Agent Team:多智能体协作生成 UI 的实战经验
前端·aigc·agent
swipe16 分钟前
深入理解 JavaScript 中的 this 绑定机制:从原理到实战
前端·javascript·面试
Json_Lee18 分钟前
2026 年了,多 Agent 编码该怎么选?agent-team vs Claude Agent Teams vs Claude Squad vs Met
前端·后端·vibecoding
Novlan121 分钟前
Stepper 小数输入精度丢失 Bug 修复
前端
陈随易26 分钟前
刚上市就断货?如此火爆的编程显示器到底有什么魔力
前端·后端·程序员
兆子龙40 分钟前
前端哨兵模式(Sentinel Pattern):优雅实现无限滚动加载
前端·javascript·算法
豆苗学前端1 小时前
彻底讲透浏览器渲染原理,吊打面试官
前端·javascript·面试
踩着两条虫1 小时前
AI 驱动的 Vue3 应用开发平台 入门指南(五):创建 H5 移动应用
前端·vue.js·ai编程
ZengLiangYi1 小时前
用 AudioContext.suspend()/resume() 作为流式音视频的同步门控
前端·音视频开发
踩着两条虫1 小时前
AI 驱动的 Vue3 应用开发平台 入门指南(二):快速入门
前端·vue.js·ai编程