最近碰到一个问题,vue项目偶发性的编译失败,严重影响工作。错误如图:
查询后了解到是Node中通过JavaScript使用内存时只能使用部分内存(64位系统:1.4 GB,32位系统:0.7 GB),如果前端项目比较大,Webpack编译时就会占用很多的系统资源,一旦超出了V8引擎对Node默认的内存限制大小时,就会产生内存溢出的错误。
处理方式是:在package.json中script下添加
"scripts": {
"fix-memory-limit": "cross-env LIMIT=2048 increase-memory-limit",
...
},
"devDependencies": {
"increase-memory-limit": "^1.0.7",
"cross-env": "^5.2.0",
...
}
接着执行 npm install cross-env --save--dev
(目前这里只能使用npm)
以及 npm install increase-memory-limit --save--dev
如果安装失败则需要先删除掉项目的node_modules包
配置并安装成功后执行npm run fix-memory-limit
这句,成功则会出现一下界面
经测试不再出现溢出问题,在此作以记录
网友评论