【npm】npm的-D选项介绍

-D 是 npm install 命令的常用选项,它的完整形式是 --save-dev,意思是:

主要作用

将包作为开发依赖(devDependencies)保存到 package.json 中

具体解释:

1. 依赖分类

json 复制代码
{
  "dependencies": {
    "express": "^4.18.0"      // 生产依赖
  },
  "devDependencies": {
    "typescript": "^5.0.0",   // 开发依赖
    "jest": "^29.0.0"         // 开发依赖
  }
}

2. 区分开发依赖和生产依赖

  • 生产依赖(dependencies):项目运行时必需的包

    • 如:express, react, lodash
    • 安装:npm install express
  • 开发依赖(devDependencies):只在开发阶段需要的包

    • 如:测试框架、构建工具、代码检查工具
    • 安装:npm install -D typescript

3. 实际应用场景

bash 复制代码
# 安装生产依赖
npm install express

# 安装开发依赖
npm install -D typescript
npm install -D jest
npm install -D webpack

# 或者完整写法
npm install --save-dev typescript

4. 重要影响

  • 部署影响 :使用 npm install --production 或设置 NODE_ENV=production 时,只安装生产依赖
  • 项目共享 :别人克隆你的项目后,运行 npm install 会安装所有依赖(包括开发依赖)

等价命令

bash 复制代码
npm i -D package-name    # 简写
npm install --save-dev package-name  # 完整写法
yarn add -D package-name  # yarn 的写法

示例对比

bash 复制代码
# 项目需要 TypeScript 编译,但生产环境不需要 TypeScript 本身
npm install -D typescript

# 项目需要 Express 来运行服务器
npm install express

简单记法:"-D" = "开发(Development)需要,生产不需要"

相关推荐
Csvn1 小时前
运行时性能
前端
Never_every992 小时前
位图转矢量工具哪个好?实测抠抠图AI位图转矢量工具
大数据·前端
paopaokaka_luck2 小时前
宠物门店经营管理系统(销售与库存联动、进货自动记账、 退换与退款关联、员工个人业绩、ECharts 经营分析、滞销识别与客户分层、宠物档案年龄计算)
前端·javascript·spring boot·mysql·echarts·mybatis·1024程序员节
空中湖3 小时前
用 React 写数据大屏:为什么我不建议用图表库
前端·react.js·前端框架
欣欣之王来了4 小时前
原始HTML插值:v-html指令的使用与安全风险
前端·学习·架构·项目·vue3教程
IT_陈寒4 小时前
Redis的LRU淘汰策略坑了我一整天
前端·人工智能·后端
计算机魔术师4 小时前
砍半价格、参数再涨,国产旗舰追到 Opus 鼻尖了
前端
特立独行的猫A5 小时前
10 MB 的桌面 AI 客户端:用仓颉 + 系统 WebView 替代 Electron
前端·harmonyos
修炼的dance6 小时前
白底图存JPG,sharp开mozjpeg背景杂点少近三成
前端
anOnion6 小时前
构建无障碍组件之Grid Pattern
前端·html·交互设计