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

相关推荐
一千柯橘1 分钟前
了解 dev-tools 不同的 debug 模式
前端
晨米酱1 分钟前
Umi Mock 如何从文件声明变成 HTTP 响应
前端·javascript·设计
小粉粉hhh3 分钟前
记录前端菜鸟的日常——自动打包脚本
前端
__zRainy__6 分钟前
Node系列 · 数据库:MySQL 安装
数据库·后端·mysql·node.js
CodeStats12 分钟前
【Java进程通信】Java进程通信系统完全指南:从ProcessBuilder底层原理到多语言实战
java·前端·python·进程·ai编程·processbuilder
鸿蒙开发13 分钟前
鸿蒙 ArkTS 校验库 @hmkit/validator 0.5.0:国际化、错误码和 Schema 组合都来了
前端
wenruozhu15 分钟前
【面试题解】 Vue 响应式原理
前端·面试
01_ice17 分钟前
前端学习JS(3)
前端·javascript·学习
无懈可击23 分钟前
Vue 低代码可视化 AI 表单设计器 FcDesigner v3.5 版本发布!
前端·vue.js·前端框架
哈__24 分钟前
极空间部署 Spug:集中管理主机、批量执行脚本与 Web 终端
前端