零碎的小知识点,如果写成文章,太短。因此写成一个小专辑「每日小知识」,会发表一些小感想,小知识点总结,如果喜欢的话~ 关注我吧。
npx ,一个很好用的命令, 学起来吧~
避免全局安装模块
比如,create-react-app 这个模块是全局安装,npx 可以运行它,而且不进行全局安装。
npx create-react-app my-react-app
上面代码运行时,npx 将create-react-app下载到一个临时目录,使用以后再删除。所以,以后再次执行上面的命令,会重新下载create-react-app。
- 指定版本
npx uglify-js@3.1.0 main.js -o ./dist/main.js
只要 npx 后面的模块无法在本地发现,就会下载同名模块
- 强制使用本地模块,不下载远程模块,--no-install
npx --no-install http-server
- 忽略本地的同名模块,强制安装使用远程模块,--ignore-existing
npx --ignore-existing create-react-app my-react-app
调用项目安装的模块
如果我们想调用一些 npm 内部模块. 我们得在 package.json 中的 script 字段里, 如果想在命令行中调用.得这样子
node-modules/.bin/mocha --version
使用 npx
npx mocha --version
原理: npx 运行的时候, 会到 node_modules/.bin 路径和环境变量 $PATH 里,检测命令是否存在.
使用不同版本的node
npx node@0.12.8 -v
上面命令会使用 0.12.8 版本的 Node 执行脚本。原理是从 npm 下载这个版本的 node,使用后再删掉。