webpack5打包图片不显示

webpack版本

webpack -v //查看

webpack 5.55.0
webpack-cli 4.8.0
webpack-dev-server 4.3.0

成功打包的配置(webpack5)

{
  test:/\.(jpg|png|gif)$/,
  type: 'asset/resource',
  generator:{ 
    filename:'img/[hash:10][ext]',
  },
},
{
  test:/\.html$/,
  loader:'html-loader',
},

出现的问题

打包成功后出现了2张图片,1和2是同一张图片,但是打包了2次,2图片是能正常显示的,1图片不能正常显示。但是页面上引入了1,所以不能显示出来。
在这里插入图片描述
在这里插入图片描述

解决

在webpack的配置中,我重复配置了文件打包的选项,没有把图片类型排除出去,注释掉下面这段代码就能正常显示图片

{
  exclude:/\.(css|html|js|less)/,
  use:[
    {
      loader:'file-loader',
      options:{
        name:'[hash:10].[ext]',
      }
    }
  ]
}

注释掉还是不能显示图片(webpack4)

使用webpack4的配置写法,但是图片打包还是存在2份,不能正常显示图片。是由于webpack5中的配置已经更新,如果任然想用webpack4的写法,可以添加type:'javascript/auto',图片也能正常显示。

{
  test:/\.(jpg|png|gif)$/,
  use:[
    {
      loader:'url-loader',
      options:{    
        limit:8 * 1024,
        name:'[hash:10].[ext]',   
        esModule:false,             
      },
    }
  ],
  type:'javascript/auto',
},
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值