Webpack 知识目录
1. Webpack 基础
1.1 Webpack 简介
- 什么是 Webpack?
- Webpack 的核心概念
1.2 安装与配置
- 安装 Webpack
- 配置文件:
webpack.config.js
1.3 入口与出口 entry
:指定入口文件output
:指定输出文件
1.4 Loader 与 Plugin- Loader 的作用与使用
- Plugin 的作用与使用
2. Webpack 核心概念
2.1 模块与依赖
- 模块化开发
- 依赖图(Dependency Graph)
2.2 模式(Mode) development
模式production
模式
2.3 代码分割(Code Splitting)- 手动分割
- 动态导入(Dynamic Imports)
2.4 热模块替换(HMR) - 启用 HMR
- 配置 HMR
3. Loader
3.1 常用 Loader
babel-loader
:编译 ES6+ 代码css-loader
与style-loader
:处理 CSSfile-loader
与url-loader
:处理文件sass-loader
:编译 Sass/SCSS
3.2 自定义 Loader- Loader 的工作原理
- 编写自定义 Loader
4. Plugin
4.1 常用 Plugin
HtmlWebpackPlugin
:生成 HTML 文件CleanWebpackPlugin
:清理构建目录MiniCssExtractPlugin
:提取 CSS 文件DefinePlugin
:定义全局变量
4.2 自定义 Plugin- Plugin 的工作原理
- 编写自定义 Plugin
5. 优化与性能
5.1 构建速度优化
- 使用
cache
缓存 - 多线程构建:
thread-loader
5.2 输出文件优化 - 代码压缩:
TerserPlugin
- CSS 压缩:
CssMinimizerPlugin
5.3 Tree Shaking - 移除未使用代码
5.4 懒加载与预加载 - 懒加载(Lazy Loading)
- 预加载(Preloading)
6. 高级配置
6.1 多页面应用(MPA)
- 配置多入口
- 使用
HtmlWebpackPlugin
生成多个 HTML 文件
6.2 环境变量 - 使用
dotenv
加载环境变量 - 区分开发与生产环境
6.3 代理与跨域 - 配置开发服务器代理
6.4 自定义配置 - 根据环境动态生成配置