npm install yarn -g 和 npm install yarn 是有区别的。
一. 先上总结
- 不加
-g的安装方式,npm install yarn会在项目中生成node_modules和(如果需要的话)package.json文件,主要用于项目本地的依赖管理。 - 使用
-g参数安装 Yarn 使其可在全局范围内使用,非常适合需要在多个项目中使用 Yarn 的开发者。
二. 进行对比
请查看 npm install yarn -g 和 npm install yarn 的对比表格:
| 特性 | npm install yarn -g | npm install yarn |
|---|---|---|
| 安装位置 | 全局安装 | 本地安装 |
| 可用性 | 在任何地方可用 | 仅在当前项目中可用 |
生成 package.json | 不会生成 package.json | 如果没有 package.json,会提示创建 |
生成 node_modules | 不生成 node_modules | 会生成 node_modules 文件夹 |
| 使用命令 | 直接使用 yarn | 需要使用 npx yarn 或将其添加到脚本中 |
| 适用场景 | 当需要全局使用 Yarn 时 | 在特定项目中需要使用 Yarn 时 |
三. 请查看详情
1. npm install yarn
如果没有 -g 参数,这个命令将 Yarn 安装为项目的本地依赖。这意味着 Yarn 将只在当前项目的 node_modules 中可用,并且您需要通过 npx yarn 来运行它,而不是直接使用 yarn 命令。
运行
npm install yarn时,以下情况会发生:(1) 生成
package.json:如果当前目录下没有package.json文件,npm会提示您创建一个新的package.json文件,您将被引导填写一些关于项目的信息。如果您选择不创建,命令将无法完成。(2) 创建
node_modules文件夹:运行npm install会在当前目录下生成一个node_modules文件夹,里面包含安装的所有依赖,包括 Yarn。(3) 更新
package.json:如果当前目录下已经有package.json文件,Yarn 将作为项目的依赖添加到package.json中的dependencies或devDependencies部分。
2. npm install yarn -g
这个命令将 Yarn 安装为全局模块,这样您可以在任何项目中使用 yarn 命令。这是推荐的安装方式,因为它允许您在系统范围内访问 Yarn。
当您在加 -g 参数的情况下运行 npm install yarn -g 时,以下情况会发生:
(1) 全局安装:Yarn 将被安装为全局模块,这意味着您可以在终端的任何位置使用
yarn命令,而不需要限制于特定的项目文件夹。(2)不生成
package.json:全局安装不会在当前目录下生成package.json文件。(3)不会生成
node_modules:全局安装时,Yarn 不会在当前目录下创建node_modules文件夹。相反,相关文件将存储在 npm 的全局模块目录中。(4)更新全局依赖:Yarn 会被添加到您的全局依赖中,您可以使用
npm list -g --depth=0命令查看已安装的全局模块。(5)适用于所有项目:全局安装的 Yarn 版本可以用于任何项目,无需在每个项目中单独安装。
(6)使用命令:您可以直接在终端中输入
yarn来使用 Yarn,而无需前缀npx。