当前位置: 首页>后端>正文

[Vue] 编译报错-内存溢出问题解决

Vue项目,打包npm run build报错,内存溢出

有两种报错的表现:

1、FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
[Vue] 编译报错-内存溢出问题解决,第1张
2、Error [ERR_WORKER_OUT_OF_MEMORY]: Worker terminated due to reaching memory limit: JS heap out of memory
[Vue] 编译报错-内存溢出问题解决,第2张

1、2两种均是JavaScript 堆内存耗尽,导致 Node.js 进程崩溃导致。
本质上这是一个node的问题。

解决方法:
1、尝试增加堆内存限制,有全局级和项目级两种方式。

在全局增加堆内存限制
环境变量->系统变量中加上
变量名:NODE_OPTIONS
变量值:--max-old-space-size=8192
(不一定是8192这个值,可以自己修改)

项目级增加堆内存限制(推荐)
"build": "NODE_OPTIONS=--max-old-space-size=8192 vue-cli-service build --mode test"。 (不一定是8192这个值,可以自己修改)
如果是windows系统可以借助cross-env这个npm包
首先npm i cross-env -D
再修改package.json中的scripts
"build": "cross-env NODE_OPTIONS=--max-old-space-size=8192 vue-cli-service build --mode test"

2、使用压缩工具,如uglifyjs。目的是减小打包后代码体积。


https://www.xamrdz.com/backend/3gd1924771.html

相关文章: