在create-react-app项目中增加JavaScript堆大小

luk*_*lte 7 javascript v8 node.js reactjs create-react-app

Node提供了通过传入--max-old-space-size命令行标志来增加堆大小的方法.在create-react-app项目中,一切都取决于react-scripts的使用.如何在这些项目中传递此参数,我应该在哪里做到最好?

谢谢你的帮助.

Bas*_*ani 11

一行答案,在终端上运行 ->export NODE_OPTIONS=--max_old_space_size=4096


Art*_*yer 11

您可以按照https://create-react-app.dev/docs/advanced-configuration 中所述禁用源映射的生成

确实根据文档:

设置为 false 时,不会为生产构建生成源映射。这解决了一些较小机器上的内存不足 (OOM) 问题。

当您遇到堆内存不足错误时就是这种情况

为此,请创建一个 .env 文件并添加 GENERATE_SOURCEMAP=false


luk*_*lte 10

非常感谢@ dan-abramov,他的评论就是答案!(如果你遇到这个问题,请给他投票).

你可以把eg node --max_old_space_size=4096 node_modules/.bin/react-scripts start放在那里而不是react-scripts start

  • 这给出了一个错误:react脚本的basedir = $(dirname .......)第2行。它说在参数列表后缺少)。请帮忙 (2认同)
  • 我有同样的问题,我们的ubuntu服务器ram 1GB,所以我需要做什么? (2认同)

小智 7

"build": "react-scripts --max_old_space_size=4096 build"
Run Code Online (Sandbox Code Playgroud)

这应该工作