【问题标题】:How do I globally install a node-cli tool with es6 import support?如何全局安装支持 es6 导入的 node-cli 工具?
【发布时间】:2019-07-08 09:58:43
【问题描述】:

我正在创建一个简单的项目生成器工具,并在我的主 index.js 文件中使用 es6 导入。我在项目的根目录下安装了babel-node.babelrc

要在全球范围内安装该工具,我的 package.json 中有这个:

"bin": {
  "generate": "./node_modules/.bin/babel-node ./index.js"
},

当我在项目的根目录下运行 npm linknpm install -g 时,出现错误:

ENOENT: no such file or directory, chmod '/usr/local/lib/node_modules/node-project-generator/node_modules/.bin/babel-node ./index.js'

我也试过了:

"bin": {
  "generate": "babel-node ./index.js"
},

"bin": {
  "generate": "npx babel-node ./index.js"
},

这个工具在我的项目环境中运行良好。那么如何添加 es6 支持来全局安装呢?

【问题讨论】:

    标签: node.js npm command-line-interface


    【解决方案1】:

    您是否已将 babel-node 作为依赖项添加到您的包中?

    无论如何,更正确的做法是提前将你的程序用 babel 编译到某个dist 目录中,这样它就可以在没有任何额外预处理器的情况下运行。

    "bin": {
      "generate": "./dist/index.js"
    }
    

    问题更少,命令执行速度更快。

    【讨论】:

    • 有趣。我会试试这个
    猜你喜欢
    • 2020-01-29
    • 1970-01-01
    • 1970-01-01
    • 2019-02-26
    • 1970-01-01
    • 2021-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多