js中的文件指纹

文章类型:Javascript

发布者:hp

发布时间:2023-04-18

一:是什么

文件指纹指的是文件的 MD5 值,用来判定文件是否被修改,具有唯一性的一个标识,通过过webpack打包后的文件中的一串数字后缀

二:用途

1:版本管理:在发布版本时,通过文件指纹来区分修改和未修改的文件

2:使用缓存:未修改的文件,文件指纹保持不变,浏览器继续使用缓存文件

三:常见方式

1:Hash :项目的构建有关,只要项目文件有修改,整个项目构建的hash值就会更改,不利于缓存

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

3:Contenthash:根据文件内容来定义hash,文件内容不变,则contenthash不变,一般对css文件使用

三:配置

output: {
path: path.resolve(__dirname,'dist'),
filename: '[name][contenthash:8].js'
}

四:表现形式

1:打包输出后的js文件后缀

2:MiniCssExtractPlugin提取打包后css文件的后缀名

3:图片、字体等通过file-loader处理的输出资源文件的后缀名

4:模块资源输出目录也可在webpack中通过output的assetModuleFilename设置文件指纹