零碎的小知识点,如果写成文章,太短。因此写成一个小专辑「每日小知识」,会发表一些小感想,小知识点总结,如果喜欢的话~ 关注我吧。


npx ,一个很好用的命令, 学起来吧~

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,使用后再删掉。