为什么npm i 要加上--save-dev

npm 中,--save-dev 是一个标志,用于将依赖项安装为开发依赖。这些依赖项通常是开发过程中需要使用的工具或库,而不是在生产环境中运行代码时需要的依赖。


开发依赖(DevDependencies)

当你在项目中使用 npm install 时,如果带有 --save-dev 标志,依赖会被添加到 package.jsondevDependencies 节点中。例如:

javascript 复制代码
npm install eslint --save-dev

结果 package.json 中会出现:

javascript 复制代码
{
  "devDependencies": {
    "eslint": "^8.50.0"
  }
}

常见的开发依赖示例

  • 构建工具:Webpack、Vite、Rollup 等
  • 代码质量工具:ESLint、Prettier 等
  • 测试框架:Jest、Mocha 等
  • 开发服务器:Webpack Dev Server、Vite 等

与生产依赖(Dependencies)的区别

  1. 开发依赖(DevDependencies)

    • 只在开发和构建过程中需要。
    • 不会被部署到生产环境。
    • 用于本地构建、代码检查、测试等任务。
  2. 生产依赖(Dependencies)

    • 项目在运行时必须依赖的库或框架。
    • 例如:Vue、React、Axios 等。

如何安装为生产依赖

不使用 --save-dev 时,默认安装为生产依赖:

javascript 复制代码
npm install axios

package.json 中会出现在 dependencies 节点:

javascript 复制代码
{
  "dependencies": {
    "axios": "^1.5.0"
  }
}

在安装后如何手动移动依赖

如果你想手动调

javascript 复制代码
npm install

这将根据更新的 package.json 文件重新整理依赖项。


--save-dev 的简写

在较新的 npm 版本中,可以使用 -D 作为 --save-dev 的简写:

javascript 复制代码
npm install eslint -D

总结

--save-dev 是用来安装只在开发阶段使用的工具或库的标志,有助于明确开发依赖和生产依赖之间的界限,从而优化项目的依赖管理和生产环境的性能。

相关推荐
augenstern41632 分钟前
webpack重构优化
前端·webpack·重构
海拥✘36 分钟前
CodeBuddy终极测评:中国版Cursor的开发革命(含安装指南+HTML游戏实战)
前端·游戏·html
寧笙(Lycode)1 小时前
React系列——HOC高阶组件的封装与使用
前端·react.js·前端框架
asqq81 小时前
CSS 中的 ::before 和 ::after 伪元素
前端·css
拖孩1 小时前
【Nova UI】十五、打造组件库之滚动条组件(上):滚动条组件的起步与进阶
前端·javascript·css·vue.js·ui组件库
Hejjon2 小时前
Vue2 elementUI 二次封装命令式表单弹框组件
前端·vue.js
小堃学编程2 小时前
前端学习(3)—— CSS实现热搜榜
前端·学习
Wannaer3 小时前
从 Vue3 回望 Vue2:响应式的内核革命
前端·javascript·vue.js
不灭锦鲤3 小时前
xss-labs靶场基础8-10关(记录学习)
前端·学习·xss
Bl_a_ck3 小时前
--openssl-legacy-provider is not allowed in NODE_OPTIONS 报错的处理方式
开发语言·前端·web安全·网络安全·前端框架·ssl