部署项目报错

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)

重新部署即可解决

相关推荐
用户033307413959 分钟前
TypeScript using 与 AsyncDisposableStack:在真实服务端代码中协调多资源清理
前端
daisychey16 分钟前
用 Playwright 做多平台内容分发,我踩过的 8 个坑
前端
IT_陈寒1 小时前
为什么你应该学习JavaScript?
前端·人工智能·后端
大龄秃头程序员2 小时前
iOS冷启动监控Demo
前端
光影少年2 小时前
为什么 JavaScript 中 0.1 + 0.2 !== 0.3,如何让其相等?
前端·javascript·算法
掘金酱2 小时前
[稀土掘金 × 火山引擎] AI用量周榜冲刺赛|获奖名单公示
前端·人工智能·后端
泡泡oO2 小时前
“如果你还在用Superpowers,那我不要和你说话”
前端·后端·全栈
维克兜率天3 小时前
趋势过滤:避免被“假突破“反复打脸
前端
8年区块链老兵3 小时前
一篇文章教会你:用区块高度读懂比特币链上的每一笔交易
前端
xixichensh3 小时前
前端转做AI程序员第一步——开发一个AI流式对话Demo
前端