01 webpack为何学
问题
我们为什么要学习webpack?
答案
我们为什么要学习webpack?
减少文件数量
缩减代码体积
提高浏览器打开的速度
02 webpack 基本概述
问题
什么是webpack?作用是?目的是?
答案
什么是webpack?作用是?目的是?
它是一个Node的第三方模块
作用是识别代码,翻译,压缩,整合打包
提高打开网站的速度
03 webpack 使用前_准备工作
问题
使用webpack需要做哪些准备工作?
答案
使用webpack需要做哪些准备工作?
初始化包环境,得到package.json文件
下载webpack等模块
在package.json自定义命令,为打包做准备
04 webpack 基本使用_打包2个js文件
问题
webpack如何使用呢?
答案
webpack如何使用呢?
默认src/index.js - 打包入口文件
需要引入到入口的文件才会参与打包
执行package.json里的build命令,间接执行webpack打包命令
默认输出dist/main.js的打包结果
05 webpack更新打包_重新打包
问题
代码增加后,如何打包呢?
答案
代码增加后,如何打包呢?
确保在src/index.js引入和使用
重新执行yarn build打包命令
06 webpack 修改默认入口和出口
问题
如何修改webpack入口和出口?
答案
如何修改webpack入口和出口?
新建webpack.config.js(webpack默认配置文件名)
通过entry设置入口文件路径
通过output对象设置出口路径和文件名
07_webpack_打包流程
问题
一句话总结下yarn build后干了什么?
所有要被打包的资源应该怎样处理?
答案
一句话总结下yarn build后干了什么?
执行webpack命令,找到配置文件,入口和依赖关系,打包代码输出到指定位置
所有想要被打包的文件应该怎样处理?
所有要被打包的资源都要跟入口产生直接或间接的引用关系
08 webpack案例_隔行变色
问题
用yarn下的包,如何作用在前端项目中?
答案
用yarn下的包,如何作用在前端项目中?
借助webpack,把模块和代码打包
把js文件引入到html执行查看效果
09 webpack插件 自动生成html文件
问题
如何让webpack打包时自动生成html文件呢?
答案
如何让webpack打包时自动生成html文件呢?
依赖html-webpack-plugin插件,yarn下载此插件
在webpack.config.js配置文件写入即可
10_webpack_打包css文件问题
问题
为什么webpack打包css文件会报错呢?
答案
为什么webpack打包css文件会报错呢?
因为webpack默认只能处理js文件
11_webpack加载器_打包css文件
问题
webpack如何支持css打包?打包后样式在哪里?如何生效?
答案
webpack如何支持css打包?打包后样式在哪里?如何生效?
依赖css-loader和style-loader
css代码被打包进js文件中
style-loader会把css代码插入到head下style标签内
12 webpack加载器_打包less文件
问题
webpack如何支持less打包?需要注意什么?
答案
webpack如何支持less打包?需要注意什么?
依赖less-loader和less模块包
转换css后还需要css-loader和style-loader的处理
13 webpack处理图片_配置asset
问题
webpack如何支持图片打包?对图片有哪两种处理方案?
答案
webpack如何支持图片打包?对图片有哪两种处理方案?
webpack5,在rules里,针对图片文件设置type: asset
小于8KB转base64字符串进js里,大于8KB输出文件
14 webpack处理图片_优点和缺点
问题
图片转base64打包进js中的好处和坏处?
答案
图片转base64打包进js中的好处和坏处?
好处是减少浏览器发送的请求次数,读取图片速度快
坏处是图片过大,转base64占空间会多30%左右
15 webpack处理字体图标文件
问题
webpack如何处理图标字体文件?
答案
webpack如何处理图标字体文件?
在webpack.config.js的rules里针对字体图标文件类型设置asset/resource,直接输出到dist下
16 webpack加载器_babel降级js语法
问题
webpack如何帮助我们降低js版本语法?
答案
webpack如何帮助我们降低js版本语法?
借助babel-loader和babel编译器,给webpack配置上
17 webpack_开发服务器概述
问题
为什么要使用webpack开发服务器呢?
答案
为什么要使用webpack开发服务器呢?
打包在内存中,速度快
自动更新打包变化的代码,实时返回给浏览器显示
18 webpack 开发服务器_基础使用
问题
如何使用webpack开发服务器实时打包我们的代码呢?
答案
如何使用webpack开发服务器实时打包我们的代码呢?
确保下载了webpack-dev-server这个包
在package.json配置自定义命令,然后启动即可
webpack-dev-server会给我们一个地址+端口浏览器访问即可看到在内存中打包的index.html页面
19 webpack 开发服务器_相关配置
问题
如何修改webpack开发服务器的配置呢?
答案
如何修改webpack开发服务器的配置呢?
去文档查找配置项的名字
在webpack.config.js的devServer选项里添加