TanStack Query(前身為 Vue Query)常被稱為網頁應用程式中缺失的資料獲取函式庫,但用更技術性的術語來說,它讓你在網頁應用中獲取、快取、同步和更新伺服器狀態 (server state) 變得輕而易舉。
大多數核心網頁框架並未提供一套全面的資料獲取或更新方法。因此,開發者最終要麼建立封裝了嚴格資料獲取觀點的元框架 (meta-frameworks),要麼發明自己的資料獲取方式。這通常意味著拼湊基於元件的狀態和副作用,或者使用更通用的狀態管理函式庫來儲存並在應用中提供非同步資料。
雖然大多數傳統的狀態管理函式庫非常適合處理客戶端狀態 (client state),但它們在處理非同步或伺服器狀態 (server state) 時表現不佳。這是因為伺服器狀態完全不同。首先,伺服器狀態:
一旦你理解了應用中伺服器狀態的本質,隨著開發進展,更多挑戰會接踵而至,例如:
如果你對這份清單不感到頭疼,那可能意味著你已經解決了所有伺服器狀態的問題,值得頒個獎。然而,如果你像大多數人一樣,要麼尚未解決所有或大部分這些挑戰,而我們才剛觸及表面!
TanStack Query 無疑是管理伺服器狀態的最佳函式庫之一。它開箱即用,無需配置,並且可以根據應用增長的需求進行客製化。
TanStack Query 讓你能夠戰勝並克服伺服器狀態的棘手挑戰,在它開始控制你之前掌控你的應用資料。
從更技術的角度來看,TanStack Query 可能會: