Webpack知识体系 | 青训营笔记

63 阅读1分钟

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

重点

  • webpack实例 配置 应用方法
  • loader组件
  • 插件
  • 学习webpack方法

Webpack

什么是Webpack

前端资源编译、打包工具

image.png

打包核心流程

实例

安装

image.png 安装配置文件

image.png 执行编译命令

image.png

image.png

核心流程

image.png 模块化 + 一致性

image.png

webpack配置分类

流程类:作用于流程中某个 或 若干个环节 直接打包效果的配置项

image.png

image.png

image.png webpack.js.org/configurati…

使用Webpack

image.png 1.声明入口entry image.png 2.声明产物出口output image.png 3.运行npx webpack

处理CSS文件

image.png

image.png 1.安装loader image.png 2.添加module处理css文件 image.png test:满足于test条件的才可以处理

use:使用哪种loader

运行结果

image.png 思考题

image.png github.com/webpack-con… mp.weixin.qq.com/s/TPWcB4MfV… webpack.js.org/loaders/sty…

接入babel

babel:为了适应 将高层次js编译为低层次的工具

image.png image.png 1.安装依赖

image.png 2.声明产物出口output,添加module

image.png

3.执行npx webpack

运行结果

image.png 思考题

image.png webpack.js.org/loaders/bab… babeljs.io/ babeljs.io/docs/en/bab… babeljs.io/docs/en/bab… babeljs.io/docs/en/bab…

生成HTML

image.png 1.安装依赖

image.png

2.声明产物出口output

image.png 3.执行npx webpack

运行结果

image.png

思考题

image.png webpack.js.org/plugins/htm…

工具线

image.png

HMR

即时更新修改

image.png 1.开启HMR devServer里hot:true

image.png

2.启动webpack

image.png

原理

image.png mp.weixin.qq.com/s/cbYMpuc4h…

tree-shaking

删除dead code

image.png 使用方法

image.png 开启tree-shaking

  • 1.mode:production
  • 2.optimization.usedExports : true

其他工具

image.png

image.png

image.png

Loader组件

认识loader

webpack只认识JS,loader将非JS资源转化为标准JS

使用loader

image.png

image.png

安装loader image.png 添加module

image.png

链式使用

image.png

image.png

其他特性

image.png

  • 链式执行
  • 支持异步执行
  • 分normal pitch两分钟模式

编写loader

image.png

image.png mp.weixin.qq.com/s/TPWcB4MfV…

常见loader

image.png

image.png mp.weixin.qq.com/s/TPWcB4MfV…

plugin插件

什么是插件

image.png

image.png

插件使用方法

image.png

dashboard插件

image.png

html插件+define插件

html插件 image.png

image.png

钩子

image.png

image.png

image.png

image.png

image.png

image.png mp.weixin.qq.com/s/tXkGx6Ckt… mp.weixin.qq.com/s/SbJNbSVzS…

如何学习Webpack

知识框架

image.png

image.png

image.png

总结

学了webpack的作用 理解了配置结构,loader的作用和常见loader以及插件基本形态与作用