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


当前回答

执行如下命令:

export NODE_OPTIONS="--max-old-space-size=2048"

检查你已经有多少钱了:

> node
> v8.getHeapStatistics()
{
  total_heap_size: 6049792,
  total_heap_size_executable: 524288,
  total_physical_size: 5477720,
  total_available_size: 1094444024,
  used_heap_size: 4141728,
  heap_size_limit: 1098907648,
  malloced_memory: 8192,
  peak_malloced_memory: 582752,
  does_zap_garbage: 0,
  number_of_native_contexts: 2,
  number_of_detached_contexts: 0
}

然后heap_size_limit: 1098907648

其他回答

当我在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

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

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

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

我想有很多方法可以达到这个错误!

在我这边,我的package.json中有一个循环。项目A依赖于项目B,项目B又依赖于项目A。

窗户

从控制面板进入系统→高级系统设置→环境变量→新建(用户或系统)

或者这可以在PowerShell中完成:

$env:NODE_OPTIONS="--max-old-space-size=8192"

如果需要,还可以增加这个数字。我们已经看到一些人需要增加到14gb的一些更大的项目!

Linux/macOS

export NODE_OPTIONS=--max-old-space-size=8192

这个问题在我为我的项目更新了我的所有库,如Node.js, TypeScript, Yarn, npm等之后就消失了。