Node.js 致命错误:调用和重试上次分配失败-JavaScript堆在生产中内存不足

Node.js 致命错误:调用和重试上次分配失败-JavaScript堆在生产中内存不足,node.js,vue.js,npm,Node.js,Vue.js,Npm,从上周开始,在生产中的大多数时候,我都会遇到致命的错误:调用和重试上次分配失败-JavaScript内存不足 我试图增加堆的大小,但没有成功。由于它是在生产中发生的,所以不能继续玩它,它停了一段时间。我在Laravel应用程序中使用Vuejs和.less package.json中的脚本如下所示: "scripts": { "start": "npm run watch", "dev": "cross-env NODE_ENV=development node_modules/w

从上周开始,在生产中的大多数时候,我都会遇到致命的错误:调用和重试上次分配失败-JavaScript内存不足

我试图增加堆的大小,但没有成功。由于它是在生产中发生的,所以不能继续玩它,它停了一段时间。我在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 节点版本为8.16

我在开发中没有遇到这种错误,但我在开发和生产中尝试了一些解决方案

我尝试添加一个npm包

`npm install -g increase-memory-limit` 
然后

`increase-memory-limit` 
但是当我执行npm-run-dev或npm-run-watch时,模块没有编译。这个过程停滞了很长时间,什么也没发生

我还尝试在生产中添加以下脚本: 脚本:{ 修复内存限制:交叉环境限制=2048增加内存限制 }, 依赖性:{ 增加内存限制:^1.0.3, 交叉环境:^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次失败了

有人能提出更好的方法吗?我如何检查堆大小是否增加。

我也有同样的问题,
我通过计算解决了这个问题,在vue文件中肯定有一次发生了这种情况,这要归咎于一个过时的软件包。你所有的软件包都是最新的吗?这应该是一个评论而不是答案。请阅读本文件,了解如何写出一个好的答案: