我在npm文档中读到你不能使用本地安装包的bin脚本。
那么,在本地安装时如何将gulp
作为bin命令启动?
在本地安装时,我查看了gulp
package.json
和bin脚本,我找不到任何答案。
答案 0 :(得分:1)
要使用此功能,请在package.json中提供bin字段,该字段是命令名称到本地文件名的映射。在安装时,npm会将该文件符号链接到用于全局安装的前缀/ bin,或者用于本地安装的./node_modules/.bin/。
因此,您本地安装的软件包二进制文件将像这样执行
./bin/node_modules/.bin/the_binary
这是您想直接启动二进制文件。或者,如the scripts part of the documentation:
中所述除了shell预先存在的PATH之外,npm run还将node_modules / .bin添加到提供给脚本的PATH中。
因此,您可以简单地编写一个像
这样的包装器脚本scripts: {
"build": "the_binary"
}
并像这样调用你的脚本
npm run build
<强>加成强>
从npm@2.0.0开始,您可以在执行脚本时使用自定义参数。 getopt使用特殊选项来分隔选项的结尾。 npm会将 - 之后的所有参数直接传递给你的脚本:
npm run test -- --grep="pattern"
答案 1 :(得分:0)
您可以使用 lpx https://www.npmjs.com/package/lpx 来
如果在本地找不到二进制文件(即不像 npx),lpx 不会下载任何包
示例:lpx tsc -b -w
将使用本地打字稿包运行 tsc -b -w