PhoneGap中文网

 找回密码
 立即注册
查看: 27037|回复: 2

创建react项目的时候 npx 是什么?

[复制链接]

28

主题

44

帖子

204

积分

中级会员

Rank: 3Rank: 3

积分
204
发表于 2018-9-18 21:54:15 | 显示全部楼层 |阅读模式
npm v5.2.0引入的一条命令(npx),引入这个命令的目的是为了提升开发者使用包内提供的命令行工具的体验。

举例:使用create-react-app创建一个react项目。

老方法:


  1. npm install -g create-react-app

  2. create-react-app my-app
复制代码


npx方式:


  1. npx create-react-app my-app

复制代码


这条命令会临时安装 create-react-app 包,命令完成后create-react-app 会删掉,不会出现在 global 中。下次再执行,还是会重新临时安装。

npx 会帮你执行依赖包里的二进制文件。

举例来说,之前我们可能会写这样的命令:

  1. npm i -D webpack

  2. ./node_modules/.bin/webpack -v
复制代码


如果你对 bash 比较熟,可能会写成这样:

  1. npm i -D webpack

  2. `npm bin`/webpack -v
复制代码

有了 npx,你只需要这样:

  1. npm i -D webpack

  2. npx webpack -v
复制代码

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

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

  1. npx github:piuccio/cowsay hello
复制代码


再比如 npx http-server 可以一句话帮你开启一个静态服务器!(第一次运行会稍微慢一些)

  1. npx http-server
复制代码


指定node版本来运行npm scripts:

  1. npx -p node@8 npm run build
复制代码


主要特点:

1、临时安装可执行依赖包,不用全局安装,不用担心长期的污染。
2、可以执行依赖包中的命令,安装完成自动运行。
3、自动加载node_modules中依赖包,不用指定$PATH。
4、可以指定node版本、命令的版本,解决了不同项目使用不同版本的命令的问题。






回复

使用道具 举报

52

主题

528

帖子

1652

积分

金牌会员

Rank: 6Rank: 6

积分
1652
发表于 2018-9-19 21:36:45 | 显示全部楼层
这是最新版本的nodejs的新特性吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐 上一条 /1 下一条

ionic4视频教程

Archiver|手机版|小黑屋| PhoneGap中文网 ( 京ICP备13027796号-1 )  

GMT+8, 2024-10-14 04:32 , Processed in 0.061079 second(s), 27 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表