const {resolve} = require('path')
const HtmlWebpackPlugin = require('html-webpack-plugin')
module.exports = {
entry: './src/index.js',
output:{
filename: 'built.js',
path: resolve(__dirname,'build')
},
module:{
rules:[
{
test: /\.less$/,
use: ['style-loader','css-loader','less-loader']
},
{
//处理图片资源
test:/\.(jpeg|png|gif|jpg)$/,
// 需要下载url-loader和file-loader webpack5已弃用,添加type:'javascript/auto'可解决问题。
loader: 'url-loader',
options:{
// 图片大小小于8kb 就会被base64处理
// 减少请求数量 但图片体积会变大
limit: 8 * 1024,
esModule: false // 解决[object%20Module]问题 原因:url-loader默认使用es6模块化解析,html-loader引入图片commonjs
},
type: 'javascript/auto'
},
{
test: /\.html$/,
loader: 'html-loader'
}
]
},
plugins:[
new HtmlWebpackPlugin({
template: './src/index.html'
})
],
mode: 'development'
}