啥时候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 是两个关键的字段。了解它们的区别和用途对开发和部署过程至关重要。

相关推荐
zy happy6 小时前
若依 vue3 报错:找不到模块“@/api/xxxx/xxxxx”或其相应的类型声明。。Vue 3 can not find mod
前端·javascript·vue.js
潘小安6 小时前
Git Worktree + Claude Code:让你的开发效率翻倍的秘密武器
前端
meichaoWen7 小时前
【Vue3】vue3的全面学习(一)
前端·javascript·学习
小猪努力学前端7 小时前
在 React + React Router v7 SSR 项目里做多端适配,我踩的两个坑
前端·react.js
q***d1737 小时前
React桌面应用开发
前端·react.js·前端框架
8***29317 小时前
解决 Tomcat 跨域问题 - Tomcat 配置静态文件和 Java Web 服务(Spring MVC Springboot)同时允许跨域
java·前端·spring
0***147 小时前
React计算机视觉应用
前端·react.js·计算机视觉
Q***K557 小时前
React高级
前端·react.js·前端框架
c***97987 小时前
React语音识别案例
前端·react.js·语音识别
q***57748 小时前
WebSpoon9.0(KETTLE的WEB版本)编译 + tomcatdocker部署 + 远程调试教程
前端