vite 打包文件名hash
时间: 2024-09-08 16:04:01 浏览: 141
vue-cli3中配置alias和打包加hash值操作
Vite 是一个现代化的前端构建工具,它利用了 ES6 的模块导入特性来实现快速的开发服务器启动,并且支持模块热替换(HMR)。在构建过程中,Vite 会打包应用,并且为了缓存优化,它会为打包后的文件生成特定的 hash 值。
打包文件名中的 hash 是通过特定的哈希算法计算得到的,通常会根据文件内容生成一个短的、独特的字符串。这个字符串会附加在打包文件的名称中,例如 `index.12345678.css`。当文件内容发生变化时,生成的 hash 值也会相应改变,这使得浏览器能够识别出文件是否更新,并据此决定是否需要重新下载新的文件,或者使用缓存中的旧文件。
Vite 允许开发者通过配置来控制打包文件的命名模式,以便在文件名中嵌入 hash。这样做的好处包括:
1. 缓存破坏:确保用户在每次文件更新后,都能获取到最新的文件,而不是使用浏览器的旧缓存版本。
2. 长期缓存:通过改变文件名来强制浏览器更新文件,可以更好地利用浏览器缓存机制,减少不必要的网络传输。
在 Vite 的配置文件(通常是 `vite.config.js`)中,可以使用 `build` 配置项中的 `chunkFilename` 和 `assetFilename` 来分别定义脚本和静态资源文件的命名模板。
例如,你可以设置如下配置来包含 hash:
```javascript
export default {
build: {
chunkFilename: 'js/[name].[hash].js',
assetFilename: 'assets/[name].[hash].[ext]',
}
}
```
这里的 `[name]` 代表原始文件名或 chunk 名,`[hash]` 代表根据文件内容生成的 hash 值,`[ext]` 代表文件扩展名。
阅读全文