赞
踩
npx是一个工具,npm v5.2.0引入的一条命令(npx),一个npm包执行器
npm的m是Management,npx的x可以理解为eXecute。
我们知道,如果一个包配置了bin之后,当它被安装的时候,在项目的node_modues/.bin 下就会有一个指令,方便执行。
以 mocha 为例。
有如下三种方式:
正常使用
node node_modules/.bin/mocha **/*.test.js
一劳永逸党,把 mocha 指令写入到 npm scripts 后,会自动寻址 node_modules/.bin
做法是package.json的script中补充一个命令:
{ scripts: { "test": "mocha **/*.test.js" }}
npx mocha **/*.test.js
运行npx时,会到node_modules/.bin路径和环境变量$PATH里,找这个命令。
除了调用项目内部模块,npx 还能避免全局安装的模块。比如,create-react-app这个模块是全局安装,npx 可以运行它,而且不进行全局安装。
npx create-react-app my-react-app
上面代码运行时,npx 将create-react-app下载到一个临时目录,使用以后再删除。所以,以后再次执行上面的命令,会重新下载create-react-app。
npx -p node@16.6.1 node index.js
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。