Webpack 知识体系|青训营笔记

61 阅读1分钟

这是我参与「第五届青训营 」笔记创作活动的第16天

本堂课重点内容

1. Webpack 的本质 2. Webpack 定义解析 3. Webpack 优势 4. 流程类配置 5. 处理 CSS 6. 接入 Bable 7. 生成 HTML 8. 使用 Webpack - 工具线 9. Webpack 内容识别 - 只认识 JS 10. 使用 Loader 11. 认识 Loader :链式调用与其他特性 12. Loader 编写 13. 常见 Loader 14. 插件定义解析 15. 插件设计优势 16. Loader 与插件的差异 17. Webpack 学习方法推荐

重点知识点介绍

Webpack的核心流程

1. 入口处理

entry文件开始,启动编译流程

2. 依赖解析

entry文件开始,根据require or import等语句找到依赖资源

3. 资源解析

根据module配置,调用资源转移器,将png, css等非标准JS资源转译为JS内容

4. 资源合并打包

将转译后的资源内容合并打包为可直接在浏览器运行的JS文件

- 递归调用2,3直到所有资源处理完毕

模块化 + 一致性

- 多个文件资源合并成一个,减少http请求数 - 支持模块化开发 - 支持高级JS特性 - 支持Typescript、CoffeeScript语言 - 统一图片、CSS、字体等其他资源的处理模型 - ……

使用Webpack

配置

- 流程类配置 - 入口处理:输入entry, context - 模块解析:resolve, externals - 模块转译:module - 后处理:otimization, mode, target - 工具类配置

image-1675868903348.png

Loader

loader作用:webpack只认识js安装各种loader依赖,需要将各种非js转成js

特性:

- 链式执行 - 支持异步执行 - 分normal、pitch两种模式

常用loader

image-1675869284122.png

Plugin

引用参考

‌⁤‍⁢⁡⁡⁢⁢⁣⁢⁢⁡⁣‌⁢⁤⁡‬‍‌‌‬⁤‌⁢⁢⁡‍⁣‍⁡‬⁢⁣⁢‬⁡‍⁢‬Webpack 知识体系(feishu.cn)