123456789101112131415161718192021222324252627282930313233343536373839404142 |
- 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
- // 取图片的hash前10位 + 扩展名
- name: '[hash:10].[ext]'
- },
- type: 'javascript/auto'
- },
- {
- test: /\.html$/,
- loader: 'html-loader'
- }
- ]
- },
- plugins:[
- new HtmlWebpackPlugin({
- template: './src/index.html'
- })
- ],
- mode: 'development'
- }
|