Vue入口文件index.html緩存的問題及解決
Vue入口文件index.html緩存
之前每次發(fā)版vue后臺管理系統(tǒng)的時候,總是要強制刷瀏覽器才能生效,現(xiàn)在總算解決這個問題了。
vue-cli里的默認配置,css和js的名字都加了哈希值,所以新版本css、js和就舊版本的名字是不同的,不會有緩存問題。
但是把打包好的index.html放到服務器里去的時候,index.html在服務器端可能是有緩存的,這需要在服務器配置不讓緩存index.html
解決方法如下:
前端在index.html中添加:
? ? <meta http-equiv="Expires" content="0"> ?? ?<meta http-equiv="Pragma" content="no-cache"> ?? ?<meta http-equiv="Cache-control" content="no-cache"> ?? ?<meta http-equiv="Cache" content="no-cache">? ??
nginx 配置如下:
location = /index.html { ? ? add_header Cache-Control "no-cache, no-store"; }
Vue項目index.html引入靜態(tài)資源,刷新頁面
<script src="https://cdn.jsdelivr.net/npm/jsencrypt@3.2.1/bin/jsencrypt.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/proxy-polyfill@0.3.0/proxy.min.js"></script>
項目中引入這兩個cdn。但是這兩個cdn 都掛完了,后來改成了本地引用。
在 pubilc 文件夾下 創(chuàng)建了static存放靜態(tài)文件,在index.html里面引用。
<script src="./static/jsencrypt.min.js"></script> <script src="./static/proxy.min.js"></script>
此時vue-router的路由模式(mode) 是 history模式。
上圖是剛進頁面的時候請求靜態(tài)文件,靜態(tài)文件的指向是正確的。
上面是在當前頁面刷新一下出現(xiàn)的問題,提示引入的靜態(tài)資源找不到。 一開始以為是要讓后端在nginx里面添加配置。后來想想如果沒配置的話 頁面應該是404的。
現(xiàn)在問題定位知道了是 路徑引用的問題并且是前端的原因。
查看了 vue-cli文檔
并且在index.html里面看到了圖標的引用,刷新的時候圖標沒有找不到。
<link rel="icon" href="<%= BASE_URL %>favicon.ico" rel="external nofollow" >
所以那兩個js的引用改為(試一試)
<script src="<%= BASE_URL %>static/jsencrypt.min.js"></script><script src="<%= BASE_URL %>static/proxy.min.js"></script>
打包之后發(fā)布線上
本地效果(刷新之后依舊正確)
<%= BASE_URL %> 插值 當前域名引用
總結
以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
解決ant-design-vue中menu菜單無法默認展開的問題
這篇文章主要介紹了解決ant-design-vue中menu菜單無法默認展開的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-10-10Vue?使用postMessage?實現(xiàn)父子跨域通信
這篇文章主要介紹了Vue應用?postMessage?實現(xiàn)父子跨域通信,通過示例介紹了postMessage的使用,本文結合示例代碼給大家介紹的非常詳細,需要的朋友可以參考下2022-12-12vue實現(xiàn)el-table點選和鼠標框選功能的方法
在Vue中我們經常需要處理表格數(shù)據,這篇文章主要給大家介紹了關于vue實現(xiàn)el-table點選和鼠標框選功能的相關資料,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2023-10-10Vue?Router解決多路由復用同一組件頁面不刷新問題(場景分析)
這篇文章主要介紹了Vue?Router解決多路由復用同一組件頁面不刷新問題,多路由復用同一組件的場景分析,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-08-08