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


当前回答

请检查你的Node.js版本:

节点- v

如果是10.1.1,那么你需要通过下面的命令更新你的根Node.js版本:

Curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.3/install.sh | bash ~ / .nvm / nvm.sh来源 nvm ls NVM安装12.18.1

完成后,请重新启动终端或Visual Studio。

它可以工作100美元。

对于Ionic用户,请在package.json中添加以下代码

“ionic:build”:“node——max-old-space-size=16384 ./node_modules/@ionic/app-scripts/bin/ionic-app-scripts.js build”,

其他回答

试试这个解决方案,在论坛上的一个旧消息中指出:3.7.0:iOS build with——prod无法工作

打开node_modules / @ionic / app-scripts / bin / ionic-app-scripts.js

将第一行改为:

#!/usr/bin/env node

to

#!/usr/bin/env node --max-old-space-size=4096

尝试1024和2048的值,但对于一个相对较大的应用程序,你可能需要4096。

我在CentOS服务器7上也有同样的问题,但这解决了我的问题:

node --max-old-space-size=X node_modules/@angular/cli/bin/ng build --prod

其中X =(2048或4096或8192 o..)是内存的值。

有时候简单是成功的关键。在你的代码中搜索while (i <= 10000){}而不增加i;)

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

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

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

这会导致内存不足。

在我的例子中,错误是由于在for中不恰当地使用条件引起的。循环。而不是:

for (let t = startNo; t <= endNo; t++) {}

我有:

for (let t = startNo; endNo; t++) {}