我刚刚开始学习React, Facebook通过提供以下现成的项目来帮助简化初始设置。

如果我必须安装框架项目,我必须在命令行中键入npx create-react-app my-app。

我想知道为什么Facebook在Github有npx create-react-app my-app而不是npm create-react-app my-app?


当前回答

NPM: NPM代表Node包管理器,是Node.js的默认包管理器。它由Isaac Z. Schlueter开发,最初发布于2010年1月12日。它完全是用JavaScript编写的。它由一个命令行客户端npm组成,用于管理所有node.js包和模块。当node.js被安装时,它被包含在安装中。

npm run your-package-name

NPX是一个用于执行包的工具。

NPX是npm的首字母缩写,NPX包是npm自带的,所以当你在5.2.0以上安装npm时,NPX会自动安装。

它是一个npm包运行器,可以从npm注册表中执行任何你想要的包,甚至不需要安装那个包。npx在单次使用包中非常有用。如果你在5.2.0以下安装了npm,那么npx不会安装在你的系统中。

执行以下命令确定是否安装了npx:

npx -v

如果未安装npx,则可以执行以下命令。

npm install -g npx

使用npx执行包:

npx your-package-name

其他回答

简单的定义:

Javascript包管理器

npx -执行npm包的二进制文件

NPX:

从https://www.futurehosting.com/blog/npx-makes-life-easier-for-node-developers-plus-node-vulnerability-news/:

Web developers can have dozens of projects on their development machines, and each project has its own particular set of npm-installed dependencies. A few years back, the usual advice for dealing with CLI applications like Grunt or Gulp was to install them locally in each project and also globally so they could easily be run from the command line. But installing globally caused as many problems as it solved. Projects may depend on different versions of command line tools, and polluting the operating system with lots of development-specific CLI tools isn’t great either. Today, most developers prefer to install tools locally and leave it at that. Local versions of tools allow developers to pull projects from GitHub without worrying about incompatibilities with globally installed versions of tools. NPM can just install local versions and you’re good to go. But project specific installations aren’t without their problems: how do you run the right version of the tool without specifying its exact location in the project or playing around with aliases? That’s the problem npx solves. A new tool included in NPM 5.2, npx is a small utility that’s smart enough to run the right application when it’s called from within a project. If you wanted to run the project-local version of mocha, for example, you can run npx mocha inside the project and it will do what you expect. A useful side benefit of npx is that it will automatically install npm packages that aren’t already installed. So, as the tool’s creator Kat Marchán points out, you can run npx benny-hill without having to deal with Benny Hill polluting the global environment. If you want to take npx for a spin, update to the most recent version of npm.

实际上,我尝试了很多方法来解决这个问题,但都失败了,最终全局删除/删除yarn解决了这个问题

只需在命令行终端输入以下命令:

NPM卸载yarn

然后运行下面的命令来安装react starter项目

npx create-react-app

包管理器

npx -执行npm包

这就是它的不同之处。

下面是一个使用npx创建应用程序的示例

NPX create-react-app project-name——template all