webpack中hash、chunkHash、contentHash的区别

webpack中hash、chunkHash、contentHash的区别

文件目录:
index.js依赖common.js和base.less

在这里插入图片描述

hash

Hash:和整个项⽬的构建相关,只要项⽬⽂件有修改,整个项⽬构建的hash值就会更改。这样会导致缓存失效。
在这里插入图片描述在这里插入图片描述
项目中的文件只要有一个文件改变,那么整个项目文件的hash都会改变。

chunkhash

chunkhash:和webpack 打包的chunk 有关,不同的entry 会⽣成不同的chunkhash值

在这里插入图片描述
只有在改变某个chunk的文件时,才会生成对应的hash。比如我改变了index依赖的base.less文件构建结果如下,会发现index对应的hash改变了,而page对应的hash没有改变。

在这里插入图片描述

contenthash

contentHash:根据⽂件内容来定义hash ,⽂件内容不变,则contenthash不变,在项目中,通常做法是把项目中css都抽离出对应的css文件来加以引用。
在这里插入图片描述
在这里插入图片描述
如果修改了base.less文件打包看一下:
css文件和依赖less文件的chunk会发生改变。
在这里插入图片描述

使用经验总结

  1. ouput打包出口使用 chunkhash
  2. css使用contenthash
  3. 图片、字体使用hash
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值