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 自定义配置 - 根据环境动态生成配置