刚开始学习 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
都是 Node.js 包管理器 npm(Node Package Manager)的一部分,但它们的功能和用途有所不同。
npm (Node Package Manager):
npm
主要用于安装、更新、卸载和管理 Node.js 项目中的包(即库或工具)。npm install
来安装一个包,并将其添加到项目的 package.json
文件中。npm install <package-name> -g
来全局安装一个包。npx (Node Package Runner):
npx
是 npm 5.2.0 版本后引入的一个工具,主要用于运行某个包中的可执行文件,而无需全局安装该包。npx
在某些情况下更加方便,因为你不需要担心全局环境的问题。npx create-react-app my-app
会临时下载 create-react-app
包并运行它,从而创建一个新的 React 应用程序。回到你的问题,npx create-react-app my-app
的使用是因为 create-react-app
是一个 CLI 工具,通常不建议全局安装。通过 npx
,你可以直接运行这个工具而不需要担心全局安装的问题。这使得安装过程更加简单和一致。
总结:
- 如果你需要频繁使用某个包,或者希望将该包作为开发依赖项安装在项目中,你应该使用 npm
。
- 如果你只需要临时运行某个包中的命令,或者不希望全局安装该包,你应该使用 npx
。