当我使用Ionic serve命令运行Ionic 3项目时,我会得到这个错误:


当前回答

只需执行以下命令:

export NODE_OPTIONS="--max-old-space-size=8192"

其他回答

如果在Visual Studio Code中运行React应用程序时发生了这种情况,请检查您的propTypes,未定义的propTypes会导致同样的问题。

当我运行angular 'ng serve'时,我也有类似的问题:

"致命错误:无效的标记-压缩接近堆限制分配失败- JavaScript堆内存不足"

在我的例子中,我发现我的Angular应用程序使用了惰性加载。一个模块已经导入到自己的路由模块,但有人做了一个导入它到应用程序模块,这导致递归(?)加载。

这会导致内存不足。

检查文件夹名称。如果文件夹名中有空格,就会产生这类问题。不带空格的重命名。

从Node.js 12更新到Node.js 14为我解决了这个问题。


现在更新Node.js 16可用,我建议更新到Node.js的最新可用版本。

添加参数——build-optimizer解决了我的问题:

Node——max_old_space_size=4096 ./node_modules/@angular/cli/bin/ng build——prod——构建优化器

我不知道为什么添加only——build-optimizer可以解决这个问题,但根据Angular文档,它应该在启用AOT编译的情况下使用,所以更新后的命令应该如下所示:

--build-optimizer=true --aot=true

Angular构建文档