iT邦幫忙

2024 iThome 鐵人賽

DAY 16
0
佛心分享-SideProject30

用 Next.js 實作屋況查詢評估專家網站系列 第 16

[Day 16] 環境建置-Apollo Client

  • 分享至 

  • xImage
  •  

了解Apollo Client的fetch policy可以幫助我們有效地管理資料載入和緩存策略。以下是一些常見的fetch policy以及它們適用的情境:

1.cache-first
此策略會先從緩存中讀取資料,如果緩存中沒有相應的資料,才會發送網絡請求。這是預設的策略。

適用情境:當你希望盡量減少網絡請求並且資料不經常變動時,可以使用此策略。
2.cache-and-network
此策略會先從緩存中讀取資料,同時也會發送網絡請求來更新緩存中的資料。

適用情境:當你希望即使有緩存也能獲取最新的資料,以確保資料的及時性時,可以使用此策略。
3.cache-only
此策略只會從緩存中讀取資料,不會發送任何網絡請求。

適用情境:當你確定緩存中一定有資料,並且不希望發送任何網絡請求時,可以使用此策略。
4.network-only
此策略只會發送網絡請求,不會使用緩存中的資料。

適用情境:當你需要每次都獲取最新的資料,而不關心緩存中的資料時,可以使用此策略。
5.no-cache
此策略會發送網絡請求,但不會將資料寫入緩存。

適用情境:當你不希望資料被緩存(例如敏感資料)時,可以使用此策略。
6.standby
此策略會暫停查詢,不會讀取資料,也不會發送網絡請求。

適用情境:當你需要暫時不執行某個查詢時,可以使用此策略。

cache-and-networknetwork-only 的比較
cache-and-network 會先返回緩存中的資料,並在後台更新資料,這樣可以提供快速的初始渲染,同時確保資料最終的一致性。而 network-only 則每次都會發送網絡請求,確保獲取的是最新資料,但可能會帶來較長的載入時間。

參考資源

medium
apollographql


上一篇
[Day 15] 環境建置-利用前端程式發送API Request(二)
下一篇
[Day 17] 環境建置-將第一支API串接上去吧
系列文
用 Next.js 實作屋況查詢評估專家網站30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言