npx 和 npm 之间的区别?NPM:NPX:
我刚刚开始学习 React,Facebook 通过提供以下现成的项目来帮助简化初始设置。
如果我必须安装骨架项目,我必须在命令行中键入。npx create-react-app my-app
我想知道为什么Github中的Facebook有而不是?npx create-react-app my-app
npm create-react-app my-app
我刚刚开始学习 React,Facebook 通过提供以下现成的项目来帮助简化初始设置。
如果我必须安装骨架项目,我必须在命令行中键入。npx create-react-app my-app
我想知道为什么Github中的Facebook有而不是?npx create-react-app my-app
npm create-react-app my-app
NPM
- 管理包,但不会使生活变得容易执行任何包。NPX
NPX
附带版本NPM
5.2+
NPM
本身并不简单地运行任何包。事实上,它不运行任何包。如果要使用 NPM 运行包,则必须在文件中指定该包。package.json
当通过 NPM 包安装可执行文件时,NPM 会链接到它们:
./node_modules/.bin/
bin/
/usr/local/bin
%AppData%/npm
可以在某个项目上本地安装软件包:
npm install some-package
现在假设您希望 NodeJS 从命令行执行该包:
$ some-package
上述操作将失败。只有全局安装的包才能通过键入其名称来执行。
若要解决此问题并运行它,必须键入本地路径:
$ ./node_modules/.bin/some-package
从技术上讲,您可以通过编辑文件并将该包添加到以下部分来运行本地安装的包:packages.json
scripts
{
"name": "whatever",
"version": "1.0.0",
"scripts": {
"some-package": "some-package"
}
}
然后使用 npm 运行
脚本(或):npm run
npm run some-package
npx
将检查 是否存在于 或 本地项目二进制文件中,然后执行它。因此,对于上面的示例,如果您希望执行本地安装的软件包,只需键入:<command>
$PATH
some-package
npx some-package
另一个主要优点是能够执行以前未安装的包:npx
$ npx create-react-app my-app
上面的示例将在命令运行路径中生成一个应用样板,并确保始终使用最新版本的生成器或生成工具,而无需在每次即将使用它时进行升级。react
npx
命令在文件部分可能很有用,当不需要定义可能不常用的依赖项或任何其他原因时:script
package.json
"scripts": {
"start": "npx gulp@3.9.1",
"serve": "npx http-server"
}
呼叫方式:npm run serve
npx 是一个 npm 包运行器(x 可能代表 eXecute)。使用 npx 的一种常见方法是临时下载并运行包或用于试用。
create-react-app 是一个 npm 包,预计在项目的生命周期中只运行一次。因此,最好使用 npx 在单个步骤中安装并运行它。
如 https://www.npmjs.com/package/npx 主页中所述,默认情况下,npx 可以在 PATH 中或从 node_modules/.bin 运行命令。
注意:通过一些挖掘,我们可以发现create-react-app指向在节点环境中执行的Javascript文件(可能是Linux系统上的/usr/lib/node_modules/create-react-app/index.js)。这只是一个全局工具,可以进行一些检查。实际的设置是由 react 脚本完成的,其最新版本安装在项目中。有关详细信息,请参阅 https://github.com/facebook/create-react-app。