react 修改less文件后保存,内存溢出,项目崩溃问题解决

一、完整报错

一个很老的react项目,因为没有package-lock.json版本锁,导致拉下来的时候,安装的依赖版本冲突,好不容易启动起来,修改less文件后只要一保存,项目就会崩溃,需要重启,报错如下:

<--- JS stacktrace --->

FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory

1: 00007FF74035168F v8::internal::CodeObjectRegistry::~CodeObjectRegistry+122159

2: 00007FF7402DB456 DSA_meth_get_flags+64118

3: 00007FF7402DC4D2 DSA_meth_get_flags+68338

4: 00007FF740C13CB4 v8::Isolate::ReportExternalAllocationLimitReached+116

5: 00007FF740BFE27D v8::SharedArrayBuffer::Externalize+781

6: 00007FF740AA183C v8::internal::Heap::EphemeronKeyWriteBarrierFromCode+1468

7: 00007FF740A9E954 v8::internal::Heap::CollectGarbage+4244

8: 00007FF740A9C2D0 v8::internal::Heap::AllocateExternalBackingStore+2000

9: 00007FF740AC0E56 v8::internal::Factory::NewFillerObject+214

10: 00007FF7407F3565 v8::internal::DateCache::Weekday+1797

11: 00007FF740CA1991 v8::internal::SetupIsolateDelegate::SetupHeap+494417

12: 00007FF740C33A89 v8::internal::SetupIsolateDelegate::SetupHeap+44105

13: 0000023FEDF0A9F6

二、原因及解决方案

1.首先可能是less版本太低,之前使用的是3.9.1的版本,然后升级到了4.1.3的版本,随之出现的问题Module build failed (from ./node_modules/less-loader/dist/cjs.js),这是因为less-loader的版本没有和less对应,于是将less-loader的版本更新到5.0.0(less-loader一定要对应,不能太高,也不能太低)
2.还是没效果的话,就安装 increase-memory-limit和cross-env这两个插件,(作用是配置把内存放大)同时在package.json的scripts添加一个新的命令:"fix-memory-limit": "cross-env LIMIT=6096 increase-memory-limit",然后npm run fix-memory-limit运行一次这个命令,成功后再启动项目



3.运行npm run fix-memory-limit命令后,再启动项目如果还报错'"node --max-old-space-size=6069"' 不是内部或外部命令,也不是可运行的程序,则进行以下操作:

vscode文件搜索工具内,全局搜索"%_prog%",然后替换为%_prog%,即去掉双引号,(点击三个点,会弹出下方包含文件和排除文件的选项,包含的文件输入./node_modules/.bin,然后点击第二个齿轮按钮,使用排除设置和忽略文件,即可搜索该目录下的所有符合条件的内容)

替换成功后再重新启动项目,理论上问题就解决了
相关推荐
程序员黑豆4 分钟前
鸿蒙应用开发:AttributeModifier 使用教程
前端·harmonyos
codeniu11 分钟前
TRAE Work 实战 | 从"有个想法"到线上Demo,我全程只靠对话就完成了
前端·trae
妙码生花14 分钟前
从 PHP 到 AI + Golang,程序员自救转型手记(五十):增加管理员角色组管理
前端·后端·ai编程
飘尘14 分钟前
一文讲清楚前端面试会问到的所有缓存
前端·javascript·面试
老王以为16 分钟前
走进 AI Agent
前端·人工智能·架构
妙码生花20 分钟前
从 PHP 到 AI + Golang,程序员自救转型手记(五十一):管理员和角色组的关联
前端·后端·ai编程
ThsPool21 分钟前
【ENVI二次开发学习整理 04】ENVI功能扩展与二次开发
java·前端·javascript
犀利的毛豆豆26 分钟前
vue和react的响应式有什么区别?
前端
因_崔斯汀27 分钟前
Three.js扩散波纹动画实现
前端·three.js
南雨北斗28 分钟前
vue3 下拉菜单
前端