zzy-project webpack踩坑记录

177 阅读1分钟

JS热重载

index.js 中设置如下代码:

if (module.hot) {
  module.hot.accept();
}

webpack.config.js 中设置如下代码:

// devServer
hot: 'true'

多次间隔很短的代码保存,上一次保存时浏览器更新时进行下一次保存,会报错

错误排查:

Pasted Graphic.png 浏览器显示404,未找到文件地址
webpack中log:

image.png

发现两次快速的保存之后,浏览器使用的依旧是上一次打包的chunk(通过hash判断)

问题原因:设置了cache

解决:设置为 cache:false

v2 但是设置为false 每一次更新都很费时间,最后使用

  cache: {
    type: 'filesystem',
    memoryCacheUnaffected: true,
  },
  experiments:{
    cacheUnaffected: true,
  },

image.png

配合热重载,基本上就不会再出现了

cache文档

v3 惨痛教训,没好好看文档... type设置system为将缓存存储到本地,而不是内存中,导致磁盘空间大减。 最后设置为:

image.png

image.png

image.png

多次通过代码保存reload页面之后,爆栈,内存溢出

正在排查...