概念:npm从5.25.2版开始,增加了 npx 命令,方便了我们在项目中使用全局包。
Node安装后自带npm模块,可以直接使用npx命令。如果不能使用用,就要手动安装一下。
npx想要解决的主要问题,就是调用项目内部(局部安装)安装的模块。比如,项目内部安装了webpack,如果我们使用webpack,只能在项目脚本的 package.json 中的scripts字段里面, 如果想在命令行下调用(局部安装的webpack),必须像下面这样。
node_modules/.bin/webpack -v
npx 可以让项目内部安装的模块用起来更方便,只要像下面这样调用就行了:
npx webpack -v

npx 的原理很简单,就是运行的时候,会到node_modules/.bin路径和环境变量$PATH里面,检查命令是否存在。
由于 npx 会检查环境变量$PATH,所以系统命令也可以调用。