使用場(chǎng)景:
無(wú)論我們用PC端瀏覽網(wǎng)站還是用的移動(dòng)端,網(wǎng)站都會(huì)緩存一些css,JS等文件。尤其是JS,我們常會(huì)寫(xiě)些代碼,我之前曾在蘋(píng)果手機(jī)上多番嘗試都沒(méi)辦法清除緩存的文件。后面通過(guò)在JS后面增加版本號(hào)即可解決問(wèn)題。
那么,我們先來(lái)看看重現(xiàn)問(wèn)題,我們寫(xiě)的JS引用,如下圖:
以上是沒(méi)有版本號(hào)的,如果你修改了tool.min.js文件,并上傳到服務(wù)器。刷新該頁(yè)面后,仍然對(duì)新修改的不會(huì)有任何響應(yīng),因?yàn)榫彺媪恕?/p>
解決辦法:
在后面加上?V=xxx,版本號(hào),那么瀏覽器就會(huì)把它當(dāng)作一個(gè)新的文件,重新加載,如下圖:
當(dāng)然,我們作為一些長(zhǎng)期維護(hù)的網(wǎng)站,我們的版本號(hào)很可能更多的是這樣:
<script type="text/JAVAscript" src="https://acstatic-dun.126.net/tool.min.js?v=2022031701"></script>
其中:
1)20220317代表的是今天的日期
2)最后兩位數(shù)字代碼的是當(dāng)天更新的第幾次。
這樣做了之后,無(wú)論我們?cè)谝苿?dòng)端還是PC端就不會(huì)出現(xiàn)緩存的現(xiàn)象。
當(dāng)然緩存這塊完全看瀏覽器,不排除有些瀏覽器仍然沒(méi)生效,那就只有清除瀏覽器緩存了。
不過(guò)怎么主流的IE瀏覽器,微信瀏覽器,google器不會(huì)出現(xiàn)這個(gè)問(wèn)題。
歡迎加我,一起分享開(kāi)發(fā)的思路與代碼