当前位置: 首页 > news >正文

devDependencies和dependencies的区别

devDependencies 的核心特点

  1. 用途:用于辅助开发、构建、测试或代码质量检查的工具。

  2. 安装方式:通过 pnpm install -D <package> 或 npm install --save-dev <package> 安装。

  3. 生产环境影响

    • 这些依赖不会被打包到最终的生产代码中。

    • 生产服务器上安装依赖时,可通过 pnpm install --production 跳过安装开发依赖。


常见 devDependencies 示例

类型典型工具/库作用
构建工具vitewebpackrollup打包、编译代码
测试框架jestmochacypress单元测试、端到端测试
代码格式化eslintprettierstylelint代码规范检查与自动格式化
类型检查typescript@types/*静态类型检查
预处理器sasslesspostcss编译 CSS 预处理器代码
本地开发服务vitewebpack-dev-server启动本地开发服务器与热更新

devDependencies 与 dependencies 的区别

特性devDependenciesdependencies(生产依赖)
用途开发、构建、测试阶段使用项目运行时必需(如框架、工具函数)
示例eslintjesttypescriptreactvuelodash
是否打包到生产环境
安装命令pnpm install -D <包名>pnpm install <包名>(默认)

为什么需要区分?

  1. 减小生产包体积:避免将开发工具(如测试框架)部署到线上。

  2. 安全性:减少生产环境中不必要的依赖,降低漏洞风险。

  3. 协作清晰性:明确标识依赖用途,方便团队理解项目结构。


如何查看 devDependencies

在 package.json 文件中,开发依赖会单独列出:

//json

{
  "devDependencies": {
    "vite": "^5.0.0",
    "eslint": "^8.56.0"
  },
  "dependencies": {
    "react": "^18.2.0"
  }
}

总结

  • 开发依赖 (devDependencies):开发阶段专用,不参与生产运行。

  • 生产依赖 (dependencies):项目运行必需,会打包到生产环境。

正确区分两者能优化项目结构、提升安全性和维护效率!

相关文章:

  • 12、算法
  • 实时语义分割之FarSeeNet(2020)模型解析代码复现及滑坡检测实战
  • Linux----网络通信
  • WPS AI+office-ai的安装、使用
  • Linux查看TP6 command定时任务并重启
  • 一、Prometheus架构
  • table 拖拽移动
  • 广域互联网关键技术详解(GRE/LSTP/IPsec/NAT/SAC/SPR)
  • 文件上传复现
  • Office 2021 Mac Office办公
  • 【银河麒麟高级服务器操作系统实际案例分享】数据库资源重启现象分析及处理全过程
  • HTML5+CSS3+JS小实例:带缩略图的焦点图
  • vue组合式API中prop
  • 深入 Vue.js 组件开发:从基础到实践
  • 《张一鸣,创业心路与算法思维》
  • 准确--Centos最小化安装通过命令去修改ip和dns
  • 本地部署Dify及避坑指南
  • 【powerjob】 powerjobserver注册服务IP错误
  • uniapp+vue3搭建项目
  • ESP32-P4 支持哪些 RISC-V 汇编指令?
  • 做网站开发app/怎么做网站宣传
  • 手机网站在线客服/怎样在百度上发表文章
  • 一家公司做网站需要什么资料/关键词优化包含
  • 自己做的网站如何让别人访问/windows清理优化大师
  • 产品设计开发流程图/seo排名快速刷
  • 知名网站有哪些?/企业网络营销策划