
获得徽章 21
- #每日一题#
啥是文件指纹?
文件指纹是指我们打包好文件的一串数组字母的后缀
文件指纹的作用是: 缓存
如何去使用文件指纹,如果是在webpack中的话,可以通过output路径中插入占位符[hash:8], [chunkhash :8],[contenthash]:8,前面是文件指纹类型后面数字是文件指纹长度来设置文件指纹
三种不同的hash指纹有不同的生成规则
hash/fullhash: 和webpack每次生产的compilation实例有关, 因为所有文件都是同一个compilation生成所以hash都一样,但是即使随意一个文件修改所有的文件都hash都会重新生成
chunkhash: 上面hash是根据compilation实例来创建的,chunkhash则是根据chunk来生成的,每一个chunk都有自己单独的hash,如果你修改一个文件的内容那么依赖它的都会随着改变hash,但是一般我们js文件会引用css文件, 但css发生变化,自己这个chunk即使没有改变但是hash也会发生改变,所以我们需要用到contenthash
contenthash: 只会根据文件内容改变才改变hash, 象外部引用的css改变不会引起js的hash改变展开等人赞过14