当我使用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代码中执行ng build命令时,我得到了相同的错误。但是,当我按照以下顺序在Windows命令行上执行相同的操作时,我可以成功地构建。

步骤1。

set NODE_OPTIONS=--max_old_space_size=4096

步骤2。

ng build

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

// worker.js
import { worker } from './worker'
node --max_old_space_size=4096 node_modules/@angular/cli/bin/ng build --baseHref=/baseUrl/ --prod=true

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

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

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

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

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

在我的例子中,错误是由于在for中不恰当地使用条件引起的。循环。而不是:

for (let t = startNo; t <= endNo; t++) {}

我有:

for (let t = startNo; endNo; t++) {}