当前位置: 首页 > ai >正文

react打包发到线上报错Minified React error #130

开发过程中遇到一个问题,记录一下
本地打包发布正常,发测试环境正常,可是通过Jenkins打包发布线上报错

报错信息

index-67fbbd81.js:39 Error: Minified React error #130; visit https://reactjs.org/docs/error-decoder.html?invariant=130&args[]=undefined&args[]= for the full message or use the non-minified dev environment for full errors and additional helpful warnings.
打开报错信息发现报错
在这里插入图片描述
由于这次更新内容比较多,开始怀疑是不是本地代码问题,
组件undefined一般是引入导出组件名问题。让cursor检查了一遍代码,发现代码没有问题。
又从git上重新拉取代码,下载依赖,运行,也是没问题。
本地生产环境没问题,线上报错,说明问题很可能出在环境差异上。
对比了一下Jenkins上的node版本,react版本等,发现版本号一致。
猜想可能是使用本地包的问题,在服务器上单独下载了依赖,导致线上本地依赖包不一致。
原本的Jenkins打包命令

yarn install
yarn build

yarn install 不是严格模式,可能会根据 semver 自动升级依赖,导致和本地 node_modules 不一致。
如果 Jenkins 的 node_modules 目录有残留,可能会混入旧依赖,导致打包产物和本地不一样。
更改后的Jenkins命令

rm -rf node_modules
yarn cache clean
yarn install --frozen-lockfile
yarn build

rm -rf node_modules:彻底清理依赖,避免残留
yarn cache clean:清理 yarn 缓存
yarn install --frozen-lockfile:严格按照 yarn.lock 安装依赖,保证和本地一模一样
yarn build:正常打包
这样可以100% 保证 Jenkins 构建出来的依赖和本地完全一致,不会因为依赖包差异导致线上 undefined 或 React #130 错误。
很多线上“本地没问题,线上报错”的根因,都是因为 CI/CD 没有严格依赖锁定
接下来重新用用Jenkins打包----正常-----线上-----正常!
完美解决!

http://www.xdnf.cn/news/15078.html

相关文章:

  • 如何快速掌握WeNet:从零到一的端到端语音识别学习指南
  • spring-ai RAG(Retrieval-Augmented Generation)
  • 上位机知识篇---网络通信端口
  • 线程邮箱(线程间通信的异步缓存机制)
  • OBB旋转框检测配置与训练全流程(基于 DOTA8 数据集)
  • 云原生周刊:镜像兼容性
  • 十、MyBatis的逆向工程
  • 美颜SDK贴纸引擎设计指南:动画、识别与适配的实现逻辑
  • 华为数据通信网络基础
  • 香港站群服务器8C/4C/2C/1C有什么区别
  • 使用you-get命令下载视频/音频/图像
  • 北京-4年功能测试2年空窗-报培训班学测开-第四十八天
  • 【世纪龙科技】几何G6新能源汽车结构原理教学软件
  • 60 美元玩转 Li-Fi —— 开源 OpenVLC 平台入门(附 BeagleBone Black 驱动简单解析)
  • 飞算Java AI:专为 Java 开发者打造的智能开发引擎
  • uniapp制作一个个人页面
  • C++11堆操作深度解析:std::is_heap与std::is_heap_until原理解析与实践
  • [Reverse1] Tales of the Arrow
  • intellij idea的重命名shift+f6不生效(快捷键被微软输入法占用)
  • 【数据库基础 1】MySQL环境部署及基本操作
  • TypeScript---泛型
  • (7)机器学习小白入门 YOLOv:机器学习模型训练详解
  • map数据结构在Golang中是无序的,并且键值对的查找效率较高的原因
  • Linux 命令:tail
  • 如何查看自己本地的公网IP地址?内网环境网络如何开通服务器公网ip提供互联网访问?
  • Lecture #20:Database Logging
  • 深度解析 DApp 开发:从技术架构到商业落地的全链路解决
  • Jenkins 分布式和并发构建
  • RK3566/RK3568 Android11 修改selinux模式
  • 用 React Three Fiber 实现 3D 城市模型的扩散光圈特效