我正在创建一个简单的项目生成器工具,并且在主index.js
文件中使用了es6导入。我在项目的根目录下安装了babel-node
和.babelrc
。
要在全球安装该工具,请在package.json
中添加它:
"bin": {
"generate": "./node_modules/.bin/babel-node ./index.js"
},
当我在项目的根目录下运行npm link
或npm 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支持以将其全局安装?
答案 0 :(得分:0)
您是否已将babel-node
作为对软件包的依赖项?
无论如何,更正确的方法是使用babel将您的程序预先编译到某个dist
目录中,以便无需任何其他预处理程序即可运行它。
"bin": {
"generate": "./dist/index.js"
}
减少问题的出现和更快的命令执行。