欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

如何用vite打包解決前端發(fā)版后瀏覽器緩存問題

 更新時(shí)間:2024年11月28日 10:05:37   作者:樹枝是天空的根  
這篇文章主要介紹了如何用vite打包解決前端發(fā)版后瀏覽器緩存問題的相關(guān)資料,這樣的配置能夠有效避免瀏覽器緩存問題,確保瀏覽器每次都能加載最新的代碼,同時(shí)又不影響第三方庫的緩存效果,需要的朋友可以參考下

如何避免瀏覽器緩存問題,保證每次發(fā)布新版本時(shí)瀏覽器都能加載最新的代碼

Vite 構(gòu)建工具的配置文件 vite.config.js

import { defineConfig } from 'vite';
import vue from '@vitejs/plugin-vue';
import { resolve } from 'path';
import pkg from './package.json' assert { type: 'json' };

// 時(shí)間戳
const timestamp = new Date().getTime();

export default defineConfig({
  plugins: [vue()],
  resolve: {
    alias: {
      '@': resolve(__dirname, 'src') // 將@配置為src目錄的絕對路徑
    }
  },
  server: {
    host: '0.0.0.0',
  },
  build: {
    rollupOptions: {
      output: {
        manualChunks: {
          vendor: Object.keys(pkg.dependencies),
        },
        chunkFileNames: ({ name }) => {
          if (name === 'vendor') {
            return `assets/js/[name]-[hash].js`; // 第三方庫不添加時(shí)間戳
          } else {
            return `assets/js/[name]-[hash]-${timestamp}.js`; // 自定義文件名,使用時(shí)間戳保證唯一性
          }
        },
        entryFileNames: ({ name }) => {
          if (name === 'vendor') {
            return `assets/js/[name]-[hash].js`; // 第三方庫不添加時(shí)間戳
          } else {
            return `assets/js/[name]-[hash]-${timestamp}.js`; // 自定義文件名,使用時(shí)間戳保證唯一性
          }
        },
        assetFileNames: `assets/[ext]/[name]-[hash].[ext]` // 資源文件添加時(shí)間戳
      },
    }
  }
});

通過設(shè)置 chunkFileNames 和 entryFileNames 函數(shù),根據(jù)文件名是否為第三方庫來動態(tài)設(shè)置輸出文件的文件名。對于第三方庫,不添加時(shí)間戳,確保其文件名穩(wěn)定;而對于自定義文件,則使用時(shí)間戳保證每次構(gòu)建生成的文件名都具有唯一性。這樣的配置能夠有效避免瀏覽器緩存問題,確保瀏覽器每次都能加載最新的代碼,同時(shí)又不影響第三方庫的緩存效果。

總結(jié)

到此這篇關(guān)于如何用vite打包解決前端發(fā)版后瀏覽器緩存問題的文章就介紹到這了,更多相關(guān)vite打包解決前端瀏覽器緩存內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論