news 2026/3/3 18:04:02

dist/ 和 node_modules/ 是做什么

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
dist/ 和 node_modules/ 是做什么

一句话先给结论

目录一句话解释
node_modules/开发时用的“零件仓库”(依赖源码)
dist/给浏览器用的“成品包”(最终可部署文件)

node_modules 给“程序员和构建工具”用
dist 给“服务器和浏览器”用

一、node_modules/ 是干嘛的?

它是什么?

node_modules 是 npm / pnpm / yarn 安装下来的所有依赖包

node_modules/├── react/├── react-dom/├── axios/├── date-fns/├── vite/├── @radix-ui/└──...

这些都是:

  • 第三方库源码

  • 构建工具源码

  • 开发依赖

  • 它在什么时候用?

  • 开发 / 构建阶段

npm install npm run dev npm run build

这时候:

  • Vite / Webpack 会从 node_modules 里

  • 把你 import 的东西找出来

  • 打包进 dist

  • 关键点(非常重要)

❌ 浏览器不会直接读取 node_modules
❌ 生产服务器不会部署 node_modules

它只存在于:

  • 开发机

  • CI/CD 构建机

为什么它这么大?

因为:

  • 每个库又依赖别的库(依赖树)

  • JS 生态是“乐高套乐高”

大是正常的,删了也能重装

rm-rf node_modules npm install

二、dist/ 是干嘛的?

它是什么?

dist 是 build 之后生成的最终产物

dist/├── index.html ├── assets/│ ├── index-8f3a9c.js │ ├── index-a12c.css │ └── logo-3fd2.svg

这些文件是:

  • 压缩过

  • hash 命名

  • 不再是你写的源码

它在什么时候生成?

npm run build

例如:

  • Vite

  • Webpack

  • CRA

它是给谁用的?

  • 给服务器 + 浏览器用

  • 浏览器 <–HTTP-- dist/

你部署时:

  • Nginx

  • CDN

  • S3

  • CloudFront

只需要 dist

三、它们之间的关系(关键理解)

你写的 src/import依赖 ↓ node_modules/↓ 构建工具 ↓ dist/↓ 浏览器运行

node_modules 从不直接上线
dist 是唯一上线目录

四、为什么 .gitignore 里经常这样写?

node_modules/dist/

原因不同 👇

忽略 node_modules

  • 太大

  • 可重装

  • 平台相关

忽略 dist

  • 每次 build 都不同

  • CI 可以重新生成

⚠️ 但注意:

  • 某些前端仓库会提交 dist(如组件库)

  • 应用项目通常不提交 dist

五、React + Vite 项目中的典型流程

# 开发 npm install # 生成 node_modules npm run dev # 用 node_modules # 构建 npm run build # 生成 dist # 部署 把 dist/上传到服务器

六、和你熟悉的 Angular 对照一下

AngularReact
node_modules/node_modules/(完全一样)
dist/app-name/dist/
ng buildnpm run build
ng servevite dev

最后一句总结
node_modules 是原材料仓库,dist 是打包好的成品。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/3/3 0:00:59

提升电子产品可靠性:深度解析散热器瞬态热管理

&#x1f393;作者简介&#xff1a;科技自媒体优质创作者 &#x1f310;个人主页&#xff1a;莱歌数字-CSDN博客 &#x1f48c;公众号&#xff1a;莱歌数字&#xff08;B站同名&#xff09; &#x1f4f1;个人微信&#xff1a;yanshanYH 211、985硕士&#xff0c;从业16年 从…

作者头像 李华
网站建设 2026/3/4 1:51:47

互联网大厂Java求职面试实录:核心技术栈与业务场景深度解析

文章内容&#xff1a; 在互联网大厂的Java求职面试中&#xff0c;技术细节和业务理解同等重要。本文通过一位严肃的面试官与一位搞笑的水货程序员谢飞机的三轮问答&#xff0c;带你深入了解面试中的技术考察与业务场景应用。 第一轮提问&#xff1a;Java核心与构建工具&#x…

作者头像 李华
网站建设 2026/2/25 22:44:49

大模型/AI产品学习路径:从入门到专家的完整指南_AI产品经理学习路线图

本文提供了AI产品学习的五阶段完整路径&#xff1a;从AI入门基础到专家领导者&#xff0c;涵盖AI思维培养、产品设计、工作流构建、产品线负责及战略规划。每个阶段明确学习目标与关键模块&#xff0c;附录提供0-24个月可执行学习计划&#xff0c;帮助学习者从0基础成长为AI产品…

作者头像 李华
网站建设 2026/2/26 2:24:45

死磕这5本书,网络小白也能成黑客大佬!

提到黑客&#xff0c;你是不是脑海里立刻浮现出那些在屏幕前手指翻飞、代码流淌间就能掌控网络世界的神秘身影&#xff1f;总觉得他们是天生的技术奇才&#xff0c;普通人只能望尘莫及&#xff1f;但其实&#xff0c;黑客并非遥不可及的 “天选之子”&#xff0c;他们的成长之路…

作者头像 李华