npx

2023-10-20 18:53:32 浏览数 (1)

在过去的几年中,npm生态系统越来越倾向于本地安装项目的开发依赖,而不是全局安装。但一直没有一个方法便捷的调用本地二进制文件,而npx的出现填补了这一块空白

npm更新到 5.2.0 版本之后,集成了npx。如果你是之前的版本,也可以手动安装

代码语言:javascript复制
$ npm install -g npx

npx的作用就是调用依赖包里的二进制文件,在没有它之前我们可能这么写:

代码语言:javascript复制
$ npm i -D webpack
$ ./node_modules/.bin/webpack -v

如果我们想直接用webpack -v,就必须安装在全局

有了npx之后,我们可以这样写:

代码语言:javascript复制
$ npx webpack -v

也就是说npx会自动查找当前依赖包中的可执行文件,如果找不到,就会去PATH里找。如果依然找不到,就会帮你安装!

npx 甚至支持运行远程仓库的可执行文件,如

代码语言:javascript复制
$ npx -p lolcatjs -p cowsay -c 
  'echo "$npm_package_name@$npm_package_version" | cowsay | lolcatjs'
...
 _____
< your-cool-package@1.2.3 >
 -----
           ^__^
           (oo)_______
            (__)       )/
                ||----w |
                ||     ||

那些苦恼不同项目使用不同版本node的同学,可以用npx来切换版本了

代码语言:javascript复制
$ npx node@0.12.8 -v
v0.12.8

0 人点赞