当我使用Ionic serve命令运行Ionic 3项目时,我会得到这个错误:
当前回答
另一个非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运行脚本构建
其他回答
试试这个解决方案,在论坛上的一个旧消息中指出: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。
我没有使用ng build,而是在终端中执行以下命令来修复这个问题。
node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --prod
那就发球吧。
这就是我的终端机
Windows PowerShell
Copyright (C) Microsoft Corporation. All rights reserved.
Try the new cross-platform PowerShell https://aka.ms/pscore6
PS D:\ProjectPath\Project1> node --max_old_space_size=8192 ./node_modules/@angular/cli/bin/ng build --prod
如果你在Windows上开发,在发布时遇到这个问题,请通过官方网站升级Node.js。
每更新一个Node.js版本,内存使用处理都会增加,尽管我没有找到确切的增加数字。
这是唯一对我有效的解决办法。我花了整整一个周末甚至更长的时间才解决这个问题。
在我的案例中,我通过安装Node.js 12.10.0版本解决了这个问题。
对我来说,问题是有一个额外的node_modules文件夹,我重命名为node_modules_old,并运行npm install来生成一个新的node_modules。在某种程度上,构建仍然会选择node_modules_old文件夹,所以我将node_modules_old从目录中移出以解决这个问题。
推荐文章
- 错误:'types'只能在.ts文件中使用- Visual Studio Code使用@ts-check
- React-Native:应用程序未注册错误
- LoDash:从对象属性数组中获取值数组
- src和dist文件夹的作用是什么?
- jQuery UI对话框-缺少关闭图标
- 如何使用AngularJS获取url参数
- 将RGB转换为白色的RGBA
- 如何将“camelCase”转换为“Camel Case”?
- 我们可以在另一个JS文件中调用用一个JavaScript编写的函数吗?
- 如何使用JavaScript重新加载ReCaptcha ?
- jQuery。由于转义了JSON中的单引号,parseJSON抛出“无效JSON”错误
- 在JavaScript关联数组中动态创建键
- ReactJS和公共文件夹中的图像
- 错误:在Android SDK中找不到gradle包装器。可能需要更新你的Android SDK - Android
- 在React Native中使用Fetch授权头