啥时候dependencies❓啥时候devDependencies❓

✅ 一、dependencies(生产依赖 / 项目依赖)

这些依赖是你的项目在"运行"时必须要用的,无论是在开发阶段还是部署上线后。

你项目打包后的最终结果,也会依赖这些库才能正常工作。也就是说:用户在访问你的网站或使用你的应用时,这些依赖仍然会起作用。

安装命令:

js 复制代码
npm install 包名       # 或者
npm install 包名 --save

例子:

  • Vue / React 等前端框架
  • vue-router / react-router 等路由库
  • axios(用于发请求)
  • UI 组件库:Element UI、Ant Design、Vant 等
  • 状态管理库:Vuex、Pinia、Redux

🔁 总结一句话:

这些依赖是"跑项目的时候必须要的",不管是开发还是上线后。
"跑项目的时候必须要的",不管是开发阶段还是部署上线后,dependencies 都不能少!


✅ 二、devDependencies(开发依赖)

这些依赖是你在"开发"项目时用的,但用户在"用你的网站"时根本不需要这些。

安装命令:

bash 复制代码
npm install 包名 --save-dev

例子:

  • 构建工具:webpack、Vite、rollup
  • 脚手架工具:vue-cli、create-react-app
  • 编译器:babel、tsc(TypeScript 编译器)
  • loader 插件:babel-loader、style-loader、sass-loader
  • 样式预处理器:sass、less
  • 格式化工具:prettier
  • 语法检查工具:eslint、stylelint
  • 单元测试工具:jest、mocha、vitest
  • mock 工具:msw、mockjs
  • 类型工具:@types/***(例如 @types/react)

🔁 总结一句话:

开发时让你"写代码更爽、更快",但不参与上线后的运行。


✅ 三、小白记忆口诀

类型 用来干嘛的 命令 举例
dependencies 项目"运行"需要的 npm install xxx Vue、axios、element-ui
devDependencies 项目"开发"时需要的(不会上线) npm install xxx -D eslint、webpack、babel

打开你的项目目录,查看 package.json 文件:

json 复制代码
{
  "dependencies": {
    "vue": "^3.4.0",
    "axios": "^1.6.0"
  },
  "devDependencies": {
    "vite": "^5.0.0",
    "eslint": "^8.0.0",
    "prettier": "^3.0.0"
  }
}

这样你就能清楚知道:哪些是"项目跑起来需要的",哪些是"只是开发用的工具"。

dependencies 是生产环境中运行所需的包,它们是应用的核心部分,影响应用的运行。
devDependencies 是开发环境中使用的工具和库,它们不影响生产环境的应用运行。

在现代的 JavaScriptNode.js 项目中,package.json 文件是项目配置的核心,它包含了项目的依赖项、脚本和其他重要信息。在依赖管理中,dependenciesdevDependencies 是两个关键的字段。了解它们的区别和用途对开发和部署过程至关重要。

相关推荐
卓怡学长33 分钟前
m111基于MVC的舞蹈网站的设计与实现
java·前端·数据库·spring boot·spring·mvc
C_心欲无痕6 小时前
前端实现水印的两种方式:SVG 与 Canvas
前端·安全·水印
尾善爱看海8 小时前
不常用的浏览器 API —— Web Speech
前端
美酒没故事°9 小时前
vue3拖拽+粘贴的综合上传器
前端·javascript·typescript
jingling55510 小时前
css进阶 | 实现罐子中的水流搅拌效果
前端·css
悟能不能悟11 小时前
前端上载文件时,上载多个文件,但是一个一个调用接口,怎么实现
前端
可问春风_ren12 小时前
前端文件上传详细解析
前端·ecmascript·reactjs·js
羊小猪~~13 小时前
【QT】--文件操作
前端·数据库·c++·后端·qt·qt6.3
晚风资源组14 小时前
CSS文字和图片在容器内垂直居中的简单方法
前端·css·css3
Miketutu14 小时前
Flutter学习 - 组件通信与网络请求Dio
开发语言·前端·javascript