前言:在 npm 中,-S
、-D
和 -g
是常用的命令行参数,用于指定安装包的不同类型和范围。今天在这里来记录一下
NPM ~ 第 1 篇 —— npm中-S、-D 和 -g的含义
npm中的-S、-D 和 -g 的含义
一. -S 等同于 --save
安装文件保存在package.json文件中,是在dependencies 下,
--save安装包信息将加入到dependencies(生产环境)中,生产阶段的依赖,也就是项目运行时的依赖,就是程序上线后仍然需要依赖。
当你使用npm install <package> -S
或npm i <package> --save
命令时,npm会将该包添加到项目的package.json
文件的dependencies
对象中。这意味着:
-
它被认为是项目的核心依赖之一,对于应用程序的正常运行至关重要。
-
下次有人克隆你的项目并运行
npm install
时,这个包会被自动安装。
二. -D 等同于 --save-dev
安装文件保存在package.json文件中,是在devDependencies下,
--save-dev安装包信息将加入到devDependencies(开发环境)中,开发阶段的依赖,就是我们在开发过程中需要的依赖,只在开发阶段起作用。
当你使用npm install <package> -D
或npm i <package> --save-dev
命令时,npm会将包添加到package.json
的devDependencies
对象中。这意味着:
-
它仅用于开发过程,比如测试、构建工具或代码样式检查。
-
生产环境中不需要它,但它对开发流程是必要的。
三. -g 等同于 --global,
安装文件进行全局安装,作用于全局环境下,
--global安装包信息是指把模块安装到操作系统上,
一般会安装在AppDataAppData\Roaming\npm目录下,
例如:npm i webpack -g,就是全局安装webpack,在操作系统的任何一个目录下都可以使用webpack所提供的指令。
当你使用npm install <package> -g
或npm i <package> --global
命令时,npm会在全局范围内安装这个包。这意味着:
- 包将被安装到系统的某个全局目录下,而不是在项目目录内。
- 安装的包可以在任何地方通过命令行调用,而无需在每个项目中单独安装。
- 全局安装通常用于CLI(命令行界面)工具,例如Angular CLI (
@angular/cli
)或Gulp (gulp-cli
)。
四. 总结
-
-S
和-D
主要用于项目本地的依赖安装,区别在于核心依赖与开发依赖。 -
-g
用于全局安装,适用于需要在系统层面访问的工具或库。
五. 补充
i 是 install的缩写