babel-node hashbang有用吗?

时间:2015-09-08 15:33:36

标签: node.js ecmascript-6 babeljs

我想制作一个使用ES6的全局可安装NPM包。为此,我认为我已使用bin/scriptname设置#!/usr/bin/env babel-node(这也需要最终用户安装babel)。这是否有效,或者是否有其他可行的更有效的方法呢?

1 个答案:

答案 0 :(得分:2)

了解像coffee-script这样的其他编译项目是如何做到的。通常你有一个可执行的bin文件,除了需要编译的lib文件之外什么都不做。

这样的事情:

project/
  bin/
    project
  lib/
    project.js
  src/
    project.babel

您的/bin/project看起来像是:

#!/usr/bin/env node
require('../lib/project.js')

只要将/src/project.babel编译为/lib/project.js且它们都保持同步,它就应该有效。

执行此操作的两种方法是使用构建系统like webpack进行监视和重新编译,或者编写npm prepublish script以仅在发布程序包时进行编译。