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


当前回答

我删除了现有的Node.js模块,并运行以下命令来解决我的问题:

npm install -all
npm audit fix

其他回答

试试这个解决方案,在论坛上的一个旧消息中指出: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。

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

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

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

这会导致内存不足。

对我来说,这就像模块导入自己一样愚蠢:

// worker.js
import { worker } from './worker'

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

当我在Visual Studio Code中执行以下语句时,我得到了相同的错误消息。但是当我在Windows命令行中执行相同的东西时,我可以成功地构建。

npm install -g increase-memory-limit
increase-memory-limit
set NODE_OPTIONS=--max_old_space_size=4096
ng build -c deploy --build-optimizer --aot --prod --sourceMap