为什么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 小时前
Webpack的基本功能有哪些
前端·javascript·vue.js
小纯洁w1 小时前
Webpack 的 require.context 和 Vite 的 import.meta.glob 的详细介绍和使用
前端·webpack·node.js
想睡好2 小时前
css文本属性
前端·css
qianmoQ2 小时前
第三章:组件开发实战 - 第五节 - Tailwind CSS 响应式导航栏实现
前端·css
zhoupenghui1682 小时前
golang时间相关函数总结
服务器·前端·golang·time
White graces2 小时前
正则表达式效验邮箱格式, 手机号格式, 密码长度
前端·spring boot·spring·正则表达式·java-ee·maven·intellij-idea
庸俗今天不摸鱼2 小时前
Canvas进阶-4、边界检测(流光,鼠标拖尾)
开发语言·前端·javascript·计算机外设
熬夜不洗澡2 小时前
Node.js中不支持require和import两种导入模块的混用
node.js
bubusa~>_<3 小时前
解决npm install 出现error,比如:ERR_SSL_CIPHER_OPERATION_FAILED
前端·npm·node.js
流烟默3 小时前
vue和微信小程序处理markdown格式数据
前端·vue.js·微信小程序