当我使用Ionic serve命令运行Ionic 3项目时,我会得到这个错误:
当前回答
添加参数——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构建文档
其他回答
在我的案例中,我通过安装Node.js 12.10.0版本解决了这个问题。
另一个非angular的答案(我在AWS Amplify上构建React应用时也遇到了同样的问题)。
正如Emmanuel所提到的,这似乎来自Node.js v10和Node.js v12处理内存的方式的差异。
我试着增加记忆,但没有用。但是使用Node.js v12做到了。
根据richard的解释,检查如何将nvm use $VERSION_NODE_12添加到构建设置中
前端: 阶段: preBuild: 命令: - nvm使用$VERSION_NODE_12 - NPM ci 构建: 命令: - nvm使用$VERSION_NODE_12 - node -v - NPM运行脚本构建
在我的例子中,错误是由于在for中不恰当地使用条件引起的。循环。而不是:
for (let t = startNo; t <= endNo; t++) {}
我有:
for (let t = startNo; endNo; t++) {}
对于我来说,我得到了这个错误,因为我失去了对我的angular中dist文件夹设置的输出路径的访问。json文件。在我用更新的凭证重新连接到远程路径后,错误消失了。
我在CentOS服务器7上也有同样的问题,但这解决了我的问题:
node --max-old-space-size=X node_modules/@angular/cli/bin/ng build --prod
其中X =(2048或4096或8192 o..)是内存的值。