webpack 打包图片资源
2024-09-08 01:23:45
webpack 打包图片资源
/**
* loader: 1. 下载 2. 使用(配置)
* plugins:1. 下载 2. 引入 3.使用
*/
// 用来拼接绝对路径的方法
const {resolve} = require('path')
const HtmlWebpackPlugin = require('html-webpack-plugin')
module.exports = {
// webpack 配置
// 入口起点
entry : './src/index.js',
// 输出
output : {
// 输出文件名
filename : 'built.js',
// 输出路径
path : resolve(__dirname, 'dist')
},
// loader 配置
module : {
rules : [
// 详细 loader 配置
{
// 问题:默认处理不了 html 中 img 图片
// 处理图片资源
test : /\.(jpg | png | gif)$/,
// 使用一个 loader, 可以不要use数组,可以直接指定
// 除了要下载 url-loader 还要下载 file-loader
loader : 'url-loader',
options : {
// 图片大小小于 8kb , 就会被base64 处理
// 优点:减少请求数量(减轻服务器压力)
// 缺点:图片体积会更大(文件请求速度更慢)
limit : 8 * 1024,
// 问题:因为url-loader 默认使用es6模块化解析,而html-loader引入图片是commonjs
// 解析是会出现问题:[object Module]
// 解决:关闭 url-loader 的es6模块化,使用commonjs解析
esModule : false,
// 给图片进行重命名
// [hash:10]取图片的hash的前10位
// [ext] 取文件原来拓展名
name : '[hash:10].[ext]'
}
},
{
test : /\.html$/,
// 处理 html 文件的img图片(负责引入img,从而能被url-loader进行处理)
loader : 'html-loader'
}
]
},
// plugins 的配置
plugins : [
// 详细 plugins 的配置
// html-webpack-plugin
// 功能:默认会创建一个空的html文件,自动引入打包输出的所有资源(js/css)
new HtmlWebpackPlugin({
// 增加一个配置
// 复制 './src/index.html' 文件,并自动引入打包输出的所有资源(js/css)
template : './src/index.html'
})
],
//模式
mode : 'development', // 生产模式
// mode : 'production' // 开发模式
}
最新文章
- webp图片实践之路
- RGW/SWIFT对象存储性能测试工具--COSBench安装
- 关于u盘启动,关于UEFI,关于hp手提计算机
- SOA架构介绍和理解
- java.lang.UnsupportedClassVersionError: Bad version number in .class file异常
- [转]DOS特殊字符转义方法
- goto,void,extern,sizeof实例
- Angular.js 学习笔记
- Codeforces Round #280 (Div. 2) E. Vanya and Field 数学
- 关于Struts2中的值栈与OGNL表达式
- ios--绘图介绍
- ADSL拨号连接
- 具体解释HTML中的window对象和document对象
- 有限等距性质RIP
- yii学习笔记--使用gii快速创建控制器和模型
- 微软黑科技强力注入,.NET C#全面支持人工智能
- SQL 中如何删除重复(每列数据都重复)的记录,只保留一行?
- SpringMVC用到的jar包
- idea创建的java web项目打包发布到tomcat
- SpringBoot项目单元测试
热门文章
- html table 固定列
- 解决报错:The import javax.servlet.annotation cannot be resolved
- scheduler源码分析——preempt抢占
- Win10连WiFi显示无internet,安全 却可以正常上网
- 如何通过 Serverless 技术降低微服务应用资源成本?
- C++优化列表
- 01_vue实例_数据_方法
- python函数参数类型:位置参数、默认参数、动态参数、关键字参数
- 2021.7.27--Benelux Algorithm Programming Contest 2020 补提
- Java(12)方法的重载