当我们做项目时,项目越大,打包的时间也变的越来越长了,打包时的内存也增多了。项目运行时服务突然停止(Node内存溢出),报出错误。 原因 因为在Node中,通过JavaScript使用内存时只能使用部分内存(64位系统:1.4 GB,32位系统:0.7 GB),这个时候,如果前端项目非常的庞大,Webpack编译时就会占用很多的系统资源,如果超出了V8引擎对Node默认的内存限制大小时,就会产生内存溢出的错误。
解决方案 第一步: 在packagejson里添加这两个插件 npm install increase-memory-limit npm install cross-env 第二步: 在package.json里的scripts里进行配置 "scripts": { "fix-memory-limit": "cross-env LIMIT=8192 increase-memory-limit" }, LIMIT是你想分配的内存大小,这里的8192单位是M也就是8G(具体的大小根据实际情况而定); 第三步: 执行 npm run fix-memory-limit 只需要执行一次即可,然后重新启动项目,热更新就不会再内存溢出了。