从上周开始的大部分时间里,我的工作量为FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory
。
我试图增加HEAP的大小,但是没有成功。由于它在生产中发生,因此无法继续使用它,因此下降了一段时间。我在Laravel应用程序中使用Vuejs和.less。
package.json中的脚本如下:
"scripts": {
"start": "npm run watch",
"dev": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
"watch": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
"watch-poll": "cross-env NODE_ENV=development node_modules/webpack/bin/webpack.js --watch --watch-poll --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js",
"hot": "cross-env NODE_ENV=development node_modules/webpack-dev-server/bin/webpack-dev-server.js --inline --hot --config=node_modules/laravel-mix/setup/webpack.config.js",
"production": "cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
},
NPM版本为4.6.1
NODE版本为8.16
我在开发中没有遇到这个错误,但是我尝试了一些开发和生产中的解决方案。
我尝试添加npm程序包
`npm install -g increase-memory-limit`
然后
`increase-memory-limit`
但是当我执行npm run dev
或npm run watch
时,模块没有编译。这个过程卡了很长时间,什么也没发生。
我也尝试在生产中添加以下脚本:
"scripts": {
"fix-memory-limit": "cross-env LIMIT=2048 increase-memory-limit"
},
"devDependencies": {
"increase-memory-limit": "^1.0.3",
"cross-env": "^5.0.5"
}
但是它也不起作用。软件包损坏了,最后不得不删除了代码。
我还尝试使用dev中的以下脚本:
"dev": "cross-env NODE_OPTIONS=\"--max-old-space-size=4096\" NODE_ENV=development node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js"
我没有收到任何错误,但是我不确定它是否可以在生产中使用。这是正确的方法吗?
或类似的内容:
npm run dev NODE_OPTIONS="--max-old-space-size=4096"
不能再有更多的生产机会,已经有2、3个故障。
有人可以建议一种更好的方法吗?我如何检查HEAP大小是否增加。
答案 0 :(得分:0)
我有同样的问题,
我通过找出来解决,在Vue文件中<div>
之后必须有<template>