解决webpack html 不能自动刷新的问题

本文记录了在webpack3和webpack4中解决html文件修改后不能自动刷新的问题。通过配置html-webpack-plugin、引入html作为依赖、设置devServer.contentBase为静态目录或者利用plugin API监听编译结束来触发更新,实现开发时html自动重载。
摘要由CSDN通过智能技术生成

很久之前出于项目需要,做了一个多页面的webpack3配置,遇到在dev-server开发时html不能修改自动更新的问题,多方查找后勉强找到了一个折中的方法,不美观算但是能凑合着用,这段时间看webpack4页稳定了而且据说都快出5就寻思着要是不赶紧弄一个的话真的对不起自己切图仔的身份,于是… 发现webpack4依然不能使用官方的方法实现这个功能,不过勉强算是找到了不用入侵生产代码的方法,在这里将他们都记录一下。


首先放一下webpack4的多页面配置webpack-v4-conf ,欢迎start??~


解决方式1

首先说下之前在webpack3中的解决方案:

首先需要知道html不能自动更新是因为html-webpack-plugin只是为我们生成html页面,并没有把我们的html页面放到webpack的依赖图里,所以,只要我们把当前页面推到依赖图中就能解决这个问题。

方法很简单,首先配置好对应的loader(因为我使用pug,所以需要配置pug-loader, 如果使用html的话则配置html-loader, 不要使用raw-loader,那会默认的ejs模板语法失效),然后将在主文件中将当前页面作为依赖引入即可,

webpack.config.js

      {
   
        test: /\.pug$/,
        use: [
          'pug-loader'
        ]
      },

main.js

if (process.env.NODE_ENV !== 'production') {
   	// 这样在生产模式时这段代码就会被shake调了
  function pageName
  • 3
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值