當前位置:首頁 » 文件管理 » 詳情頁面緩存

詳情頁面緩存

發布時間: 2023-02-18 17:25:36

Ⅰ vue頁面緩存設置,動態設置頁面緩存

情景:A頁面—>B頁面—>C頁面,A頁面去B頁面期望B頁面不緩存,B頁面去C頁面時,期望B頁面可以被緩存。(實際場景可以是:A為首頁,B為列表頁,C為詳情頁,B滾動翻頁後,從C返回B,記錄滾動位置。)
通過路由訪問鉤子設置B頁面的keepAlive為true或者false。
離開路由後,判斷to.name是否是A的路由名,是的話設置為false,否則設置為true。注意B頁面的keepAlive要設置為true。

2.通過vuex結合路由的includes功能以及路由鉤子函數實現。(推薦,實現起來優雅)
3.聲明一個初始化頁面狀態,內部變數的函數,從a 頁面進入執行初始化函數,其餘情況不執行。視圖依賴數據驅動,所以可以實現效果。

Ⅱ 蘋果手機如何清理緩存

1、清理瀏覽器緩存:我們在iPhone上打開設置頁面,找到Safari選項,並且打開它。

Ⅲ 商品詳情頁局部靜態化實例分析以及技術點

流程簡述:
1.商品後台進行商品導入,導入後發非同步消息流生成局部靜態模板頁(圖文詳情介紹說明之類的----變化不大的內容)。

2.模板頁的生成,可以利用ob緩存渲染html模板之類的,然後將模板文件上傳到指定的伺服器,這里對文件名的規則有一定的要求( https://image-shop.chuchujie.com/culiu.cdn/shop_staticHtml/detail/18/67/1100240643278_detail.html ),基於商品id進行hash運算得到的/18/67目錄,所有調用端保持一致即可。

3.上傳到七牛伺服器需要注意的地方,七牛開啟cdn加速,在多個地區開啟多個節點,將文件上傳到源站進行分發,除了源站外的其他地方直接訪問的是cdn緩存,如果源站發生改變,需要主動提交刷新緩存請求或者通過攜帶隨機 URL 參數刷新。這里使用通過攜帶隨機 URL 參數刷新。

例如,如果 http://om9helk.qnssl.com/resource/gogopher.jpg 這個圖片資源沒有更新,可以在該 URL 後面加上問號隨機參數的形式來讓 CDN 強制刷新: http://om9helk.qnssl.com/resource/gogopher.jpg?v=1234567 ,CDN 拿到這個 URL 後會強制回源站中取回最新的資源。

如果域名沒有開啟忽略 URL 參數,那麼在 CDN 節點上,對於:
( http://om9helk.qnssl.com/resource/gogopher.jpg )
( http://om9helk.qnssl.com/resource/gogopher.jpg?v=1 )
( http://om9helk.qnssl.com/resource/gogopher.jpg?v=2 )
這三個 URL 是獨立緩存的。所以,如果攜帶之前沒用過的參數訪問,CDN 會強制回源站中取回最新的資源。

① 關閉忽略 URL 緩存的域名,才可以使用這種方法刷新。

本項目中採用nginx緩存一段時間的方法,來控制url的參數 https://image-shop.chuchujie.com/culiu.cdn/shop_staticHtml/detail/18/67/1100240643278_detail.html?v=15484108912&is_cct=0&is_oversea=0&delivery_type=0
參數v通過訪問介面的時間戳來變化,來強制CDN更新。
還有一種好的方法是,更新模板的時候,主動提交刷新緩存請求,來使CDN更新所有緩存內容和源站同步。

4.然後是商品詳情頁介面,裡面有需要的動態變化的數據,例如價格數量 sku,spu,活動時間以及優惠券等信息,也包含局部靜態模板文件地址,ios/安卓可以拿到相應的地址開啟web view進行展示,h5拿到地址進行get請求得到模板html,然後載入到商品詳情頁。

5.商品詳情頁介面里分多級緩存,這里使用memcache。然後使用nginx的fastcgi_cache緩存整個商品詳情頁介面,減少了nginx與php服務的請求,在高並發的情況下性能極佳。

6.這里需要注意的是更新商品內容時需要更新模板,以及nginx更新fastcgi_cache緩存的內容。(我的想法是,在知道更新了商品內容並且更新了模板後,則刪除之前在nginx緩存該商品詳情介面的內容,重新進行緩存,因為直接修改nginx的緩存比較困難,但是刪除比較方便,直接根據規則刪除對應的文件)

7.主要利用七牛上傳文件,使用裡面的刷新緩存功能來更新模板信息。
使其他的CDN緩存回源更新源站最新的內容然後進行緩存。

8.通過nginx配合lua,對特殊的fastcgi_cache緩存的內容進行實時修改數據,比如商品詳情頁里可能含有活動的倒計時時間,這個倒計時時間需要當前的服務時間與活動結束時間實時比較得到,這時候通過ngx.location.capture發起一個當前緩存頁的請求,如果拿到的是緩存的數據,則將數據進行對應的修改local currentTime = os.time(),最後再response響應,ngx.say(response.body);
ngx.exit(ngx.HTTP_OK)。
當然一些無需變化的數據,直接走fastcgi_cache緩存的數據即可。

Ⅳ 蘋果手機作業幫怎麼清理緩存,作業幫怎麼清理緩存蘋果手機

長時間使用作業幫之後,在手機裡面會有很多的視頻、圖片等緩存在,如果不清理的話會對手機反應速度、使用等產生影響,那蘋果手機作業幫怎麼清理緩存,作業幫怎麼清理緩存蘋果手機?看過下述的介紹就知道了。蘋果手機作業幫緩存清理首先需要打開手機的設置軟體,也就是桌面上齒輪狀的圖標,點擊進入到詳情頁面之後,找到對應的應用圖標按鈕,再一次進入到詳情頁面,在裡面找到應用管理的按鈕,然後找到作業幫App軟體,點擊將該軟體的詳情頁面打開,之後再單擊儲存按鈕,找到清理緩存按鍵,等待幾分鍾時間之後就能夠完成了。 作業幫緩存清理建議大家最好是一周或者是半個月做一次,如果東西太多的話會讓手機變得很卡,而且有些自己想要保存的東西也不能保存,定時清理就能夠保證手機正常運行,避免卡頓等問題的出現。 蘋果手機作業幫緩存清理辦法就是上述介紹的,其實步驟的話還是很簡單的,大家可以直接根據內容進行操作,只需要幾分鍾時間就能夠很好的完成,大部分人都能夠掌握。

Ⅳ b站緩存視頻怎麼跳到詳情頁

我們在使用嗶哩嗶哩APP的時候,想要直接在視頻詳情頁點擊即可自動播放,該怎麼設置呢?今天就跟大家介紹一下怎麼在bilibili B站APP中設置在視頻詳情頁直接播放的具體操作步驟。

1. 解鎖手機後,找到桌面上的嗶哩嗶哩app,打開

2. 進入主頁面後,點擊右下角的「我的」選項,

3. 在打開的我的頁面,找到下方的「設置」選項,打開

4. 進入設置頁面後,找到「播放設置」選項,打開

5. 如圖,在打開的播放設置頁面,我們就可以看到「詳情頁直接播放」的選項了,

6. 最後,將其右側的開關打開即可。

以上就是怎麼在bilibili B站APP中設置在視頻詳情頁直接播放的具體操作步驟。

Ⅵ 通過keepalive對後台管理列表進行緩存

問題: 我目前正在負責一個後台管理項目,管理系統最多的無外乎就是這張表,那張表。而這個問題就是出現在表上,基本上表上的每個數據都要有一個詳情,而且由於表的中的數據量一般都很大,都會用到分頁或者查詢搜索。

需求: 也就是咱們要解決的問題,這個問題就出現在表頁面與詳情頁面或者編輯頁面跳轉時,不能很好的緩存列表頁在跳轉至其他頁面再進行返回時的場景。簡而言之就是緩存列表組件並只在對應模塊下進行緩存。

好的扯了這么多,那麼我是如何解決的呢?

因為在 Vue 中,每個頁面都可以被認為是一個組件,這個時候,可以考慮將該頁面進行緩存,然後我在 Vue 官網找到了 keep-alive ,其具體內容如下:

以上可以知道,通過 keep-alive 是 可以緩存不活動 的組件實例的,並且在 keep-alive 中是會有 activated 和 deactivated 兩個生命周期鉤子函數。

最初時,我是在 router 中添加 meta 元信息,在其中添加一個 keepAlive 屬性,並將要緩存的頁面設置為 true

然後在視圖組件 router-view 上添加 keepAlive

最後通過 activated 和 deactivated 函數在被緩存的頁面調用相關的方法。

上述方法能將符合條件的路由進行緩存, 但是 上述方法有一個 弊端 ,回到一開始的需求,是要在對應模塊下緩存列表組件,而上述方法是將所有符合條件的路由進行了緩存,但是並沒有做到僅僅只是在對應模塊下緩存。

網上說直接將 keepAlive 設置為 false 就能銷毀緩存,從我實驗的結果來看,貌似並沒有什麼卵用,改天用 Vue-devtools 看看到底有沒有被銷毀。

在觀看官方文檔時, keep-alive 自帶三個 props ,分別是 include、exclude、max ,具體使用方法我就不多做贅述了直接上文檔吧。

API — Vue.js

好了,下面直接說我的解決辦法吧。我將 include 和 vuex 搭配進行了使用,使用 include 判斷需要緩存的路由,通過 vuex 全局緩存數據,因為這個需求是對整個系統的列表而言,因此我還是用了 [mixin]( 混入 — Vue.js )(混入)

通過以上所述方法就能夠成功的將同一模塊下面的列表進行緩存了,因為是使用的是路由守衛進行的數據的添加和刪除, 因此 ,如果想要在 頁面刷新後 任要能夠進行緩存,可以再 vuex 上添加 sessionstorage 緩存數據,這里我就不做說明了,相信這難不到聰明的你,並且如果路由存在子級話,想要緩存路由還是需要在 router-view 上加上 keep-alive 。

如果上述有什麼不對的地方,或者各位大佬們有什麼更好的方法,可以在下方留言評論告知哦!

純手打,請各位大佬給我點個贊!

Ⅶ 頁面緩存是什麼意思

和電腦上網的緩存文件一樣,把手機網上的內容下載到手機里保存,這樣就可以一直瀏覽這個頁面不用再下載了,提高瀏覽速度也為了節省流量。

Ⅷ 解決vue keepAlive 二次進入頁面顯示首次緩存問題

問題場景: 當某個帶有篩選條件查詢列表的頁面需要進行緩存,以便不再需要重復進行選擇或者輸入篩選條件的時候,我們就可以利用keepAlive來進行緩存,但keepAlive也存在著一些坑,這是需要注意的地方。

如何利用keepAlive進行緩存
1、在路由meta內定義keepAlive,來設置需要被緩存的頁面

meta: { keepAlive: true }
ture: 需要緩存的路由;false:不需要緩存的路由

2、判斷router-view

被keep-alive包裹的為需要緩存的頁面,這樣我們就可以通過keepAlive來切換哪些頁面需要緩存,哪些不需要緩存。

3、進入詳情頁面緩存,否則不緩存

路由守衛鉤子 beforeRouteLeave 離開頁面路由的時候出發; 當離開緩存頁面,進入詳情頁面的時候,我們將緩存頁面keepAlive設置true,如果離開緩存頁面,不是進入詳情頁面的時候,我們設置為false,不進行緩存。

這是最基本的緩存設置,但是keepAlive也留下了一個大坑。

keepAlive二次進入頁面顯示首次緩存問題
第一次從緩存頁面進入詳情頁再返回到緩存頁面的時候,頁面條件能被正確的緩存下來,但是當我們切換到別的路由,再一次進入該緩存頁修改查詢條件,並進入詳情後返回緩存頁,此時緩存的是頁面狀態是第一次進入該頁面的時候的狀態,也就是說,第二次進入頁面的時候,該緩存讀取的是第一次的緩存,這就非常的坑了。 所以通過下面的刷新緩存路由的方式來解決這個問題。

1、調整 router-view

定義一個isRouterAlive變數,用來刷新keep-alive;通過provide向下面子孫組件們暴露一個reload方法,用來刷新緩存。

2、設置緩存

子組件注冊inject: ['reload'] 方法,beforeRouteEnter鉤子在進入緩存頁面的時候通過通過判斷路由是否是來自詳情頁面,如果不是詳情頁,我們就刷新緩存,如果是詳情頁,就不做處理。 這樣就解決了,只要是路由進入過別的頁面(非詳情頁面),我們就刷新緩存,這樣就不會出現二次進入的時候,顯示的是第一次的緩存狀態,同時從詳情頁返回後正常顯示緩存數據。

Ⅸ 在Vue中如何緩存頁面

在Vue中經常會遇到需要緩存頁面的情況,如果不對Vue進行處理,那麼Vue默認是不會緩存頁面的。例如從菜譜列表界面進入到菜譜的詳情頁後,再從菜譜詳情頁中返回到菜譜列表頁面中時,菜譜列表是不需要進行刷新的,一個是增加了不必要的網路請求,第二個是如推薦菜譜後台是實時推薦的,每次請求的數據都不一定一樣的,這樣在用戶退出後甚至找不到之前的進入位置,造成了很不好的用戶體驗。類似的情況還有很多,那麼如何在Vue中控制頁面是否刷新呢?

設置方法

注意:以上兩種方法都可以對路由是否緩存進行設置,如果不論何種情況下都要緩存頁面,可以直接採用第一種方法,當然第二種情況同樣可以滿足情況;但是如果需要區分從不同頁面跳轉的情況來確定是否需要緩存的話,就需要用到第二種方法。

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:711
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:973
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:684
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:836
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:742
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1084
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:313
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:193
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:881
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:839