我正在使用ES6,在io.js上使用不同的标志运行它,如下所示:
iojs --harmony_arrow_functions arrow.es6
iojs --harmony_modules --harmony_destructuring importer.es6但是,经常手动编写这些标志是非常无聊的,而且我总是混淆特定文件所需的标志。我可以将文件中的标志设置为:
process.env['--harmony_modules'];
process.env['--harmony_destructuring']; or
process.env['flags'] = ['--harmony_modules', '--harmony_destructuring'];还是使用./config文件运行io.js?
发布于 2015-08-16 11:57:46
如果您只是在试验ES6,请尝试babel.js REPL。还可以检查他们的设置页,它给出了如何使用babel动态传输代码的说明(对于许多不同的工具/用例)。
如果您不想使用像babel.js这样的转换程序,那么您可以创建一个别名或脚本,在启用所有和谐标志的情况下执行io.js,然后使用它启动所有脚本。例如,作为别名:
alias iojs-es6='iojs --harmony_arrow_functions --etc...'请注意,使用io.js (V8 4.1+) all 默认情况下启用了稳定的ES6功能。因此,您只需要为其他任何事物提供标志:
staging启用--es_staging --目前只使用Symbol.toStringTagin progress -目前为: --harmony_modules --harmony_arrays --harmony_array_includes --harmony_regexps --harmony_arrow_functions --harmony_proxies --harmony_sloppy --harmony_unicode发布于 2015-12-26 19:11:06
io.js与Node:https://iojs.org合并
你说每一次传递旗帜都很烦人。可以将脚本添加到package.json中,如下所示:
"scripts": {
"start": "node --es_staging --harmony_destructuring server.js"
}然后npm run start或npm start将运行您的脚本。
ES6 2015/ES6的许多特性现在都是在Node out- https://nodejs.org/en/docs/es6/中启用的。
您可以运行具有稳定的ES2015特性的节点,这些特性不会像下面这样自动启用:node --es_staging server.js
您可以在Bash中运行此命令来查看所有的和谐标志:node --v8-options | grep harmony
例如,要获得ES2015特性加上析构(在Node5.3中目前还不稳定):
node --es_staging --harmony_destructuring server.js
为了保持节点的最新,nvm是很棒的:https://www.npmjs.com/package/nvm。
https://stackoverflow.com/questions/32033916
复制相似问题