使用 babel-node 时如何将选项传递给节点
How to pass options to node when using babel-node
Babel CLI 文档 (https://babeljs.io/docs/usage/cli/):
babel-node [options] [ -e script | script.js ] [arguments]
但是当尝试增加为 Node 分配的内存时:
babel-node --max-old-space-size=16384 script.js
参数--max-old-space-size=16384
似乎被忽略了
有人知道这是否可行,如果不可行 - 一些解决方法?
编辑:(2016 年 7 月)从版本 6.11.4 开始,现在支持所有变体。问题中发布的示例现在有效。
6.11.3 版本的 Babel 还不支持 v8Flags 的所有变体。
Node 本身支持使用下划线 (--max_old_space_size
) 或破折号 (--max-old-space-size
) 传递此标志。
相比之下,babel-node 仅在使用下划线指定时才支持这些标志,并且不支持格式 --flag=value
.
有一个 open pull request 解决了这个问题。遗憾的是,目前没有使用值指定 v8Flags 的解决方法。
有一个错误可能与节点 v10 有关...
v8flags v2 运行不正常,您需要使用当前的 v8flags 3.1.1。
我正在使用 yarn 作为全局节点工具,这里是用于快速修补的快速命令(可能会在每个 yarl global add
上重做)...
如果使用 babel-cli 6
yarn 全局添加 v8flags
rm -rf ~/.config/yarn/global/node_modules/babel-cli/node_modules/v8flags
你可以使用 babel 7,但是你的 babel 配置有很多变化
纱线全局添加@babel/core@babel/node
我正在使用 Babel 7,这确实有效。
babel-node --max-old-space-size=16384 script.js
简单的测试方法是将大小降低到 100KB,您将很快 运行 内存不足。
您还可以使用环境变量绕过 babel-node
必须一起支持标志。
NODE_OPTIONS=--max-old-space-size=16384 babel-node [options] [ -e script | script.js ] [arguments]
在我的例子中,我需要使用 --tls-min-v1.0
但 babel-node 不知道那个标志。
NODE_OPTIONS=--tls-min-v1.0
成功了。
Babel CLI 文档 (https://babeljs.io/docs/usage/cli/):
babel-node [options] [ -e script | script.js ] [arguments]
但是当尝试增加为 Node 分配的内存时:
babel-node --max-old-space-size=16384 script.js
参数--max-old-space-size=16384
似乎被忽略了
有人知道这是否可行,如果不可行 - 一些解决方法?
编辑:(2016 年 7 月)从版本 6.11.4 开始,现在支持所有变体。问题中发布的示例现在有效。
6.11.3 版本的 Babel 还不支持 v8Flags 的所有变体。
Node 本身支持使用下划线 (--max_old_space_size
) 或破折号 (--max-old-space-size
) 传递此标志。
相比之下,babel-node 仅在使用下划线指定时才支持这些标志,并且不支持格式 --flag=value
.
有一个 open pull request 解决了这个问题。遗憾的是,目前没有使用值指定 v8Flags 的解决方法。
有一个错误可能与节点 v10 有关... v8flags v2 运行不正常,您需要使用当前的 v8flags 3.1.1。
我正在使用 yarn 作为全局节点工具,这里是用于快速修补的快速命令(可能会在每个 yarl global add
上重做)...
如果使用 babel-cli 6 yarn 全局添加 v8flags rm -rf ~/.config/yarn/global/node_modules/babel-cli/node_modules/v8flags
你可以使用 babel 7,但是你的 babel 配置有很多变化 纱线全局添加@babel/core@babel/node
我正在使用 Babel 7,这确实有效。
babel-node --max-old-space-size=16384 script.js
简单的测试方法是将大小降低到 100KB,您将很快 运行 内存不足。
您还可以使用环境变量绕过 babel-node
必须一起支持标志。
NODE_OPTIONS=--max-old-space-size=16384 babel-node [options] [ -e script | script.js ] [arguments]
在我的例子中,我需要使用 --tls-min-v1.0
但 babel-node 不知道那个标志。
NODE_OPTIONS=--tls-min-v1.0
成功了。