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


当前回答

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

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

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

这会导致内存不足。

其他回答

在我的例子中,它是一个递归,导致React用完所有内存。

这发生在我重构代码时,我没有注意到这一点。

const SumComponent = () => {
  return (
    <>
      <SumComponent />
    </>
  )
}

在其他Node.js应用程序中,这可能是这样的:

const someFunction = () => {
  ...
  someFunction();
  ...
}

对于我来说,我得到了这个错误,因为我失去了对我的angular中dist文件夹设置的输出路径的访问。json文件。在我用更新的凭证重新连接到远程路径后,错误消失了。

在我的案例中,我通过安装Node.js 12.10.0版本解决了这个问题。

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

更换线路

"start": "ng serve -o——port 4300——configuration= zh " with

"start": "node——max_old_space_size=5096 node_modules/@angular/cli/bin/ng serve -o——port 4300——configuration= zh "

注意:

端口—4300不是常量,这取决于您选择的端口。 ——max_old_space_size=5096 too not constant;任意值1024、2048、4096等