2

如何实现文件监听

--watch

  • 文件源码变化时,自动重新构建输出新的编译文件。(热重载)
  • 需要每次手动刷新浏览器
  • 原理:通过“不停轮询文件的修改时间“,缓存一批更新

    watchOptions: {
      ignored: /node_modules/,
      aggreagteTimeout: 300, // 监听到变化后等300ms后再去执行,默认300ms
      poll: 1000 // 每1000ms检查一次变动
    }
    • 以上只是达到了热重载,要想热更新,需要配合webapck-dev-server和HotModuleReplacementPlugin实现。

热更新

  • 运行时更新所有类型的模块,而无需完全刷新。
    实现原理:通过websocket建立webpack server与client的长连接,当检测到文件变化,就主动推送到client。client会再去请求更新的资源,实现热更新。

雨花石
410 声望19 粉丝

人生没有彩排,每天都是直播