欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

react:swr接口緩存案例代碼

 更新時間:2023年11月10日 11:17:55   作者:小強有個dream  
useSWR 是一個 React Hooks,是 HTTP 緩存庫 SWR 的核心方法之一,SWR 是一個輕量級的 React Hooks 庫,通過自動緩存數(shù)據(jù)來實現(xiàn) React 的數(shù)據(jù)獲取,本文給大家介紹react:swr接口緩存案例詳解,感興趣的朋友一起看看吧

useSWR 是一個 React Hooks,是 HTTP 緩存庫 SWR 的核心方法之一。SWR 是一個輕量級的 React Hooks 庫,通過自動緩存數(shù)據(jù)來實現(xiàn) React 的數(shù)據(jù)獲取。
第一個參數(shù)是被緩存的數(shù)據(jù)的 key,
第二個參數(shù)是一個函數(shù),該函數(shù)返回數(shù)據(jù)或者一個 Promise
第三個參數(shù)是一個配置對象,它允許我們對 useSWR 請求的行為進行一些自定義設置, 參數(shù)如下

revalidateOnFocus - 如果設置為 true,窗口焦點切換到此頁面時將自動重新驗證數(shù)據(jù)。
revalidateOnReconnect - 如果設置為 true,每次從離線到在線時將自動重新驗證數(shù)據(jù)。
revalidateOnMount - 如果設置為 true,每次組件掛載時都會自動重新驗證數(shù)據(jù)。
refreshWhenHidden - 如果設置為 true,在文檔不可見時還是會自動重新驗證數(shù)據(jù)。
refreshWhenOffline - 如果設置為 true,即使 offline,也會自動重新驗證數(shù)據(jù)。
suspense - 如果設置為 true,在重新驗證數(shù)據(jù)之前將顯示占位符內(nèi)容來保持組件渲染的持續(xù)性。
errorRetryCount - 它是重試次數(shù),默認值為 3,當數(shù)據(jù)驗證失敗時,它將嘗試重新驗證數(shù)據(jù)的次數(shù)。
errorRetryInterval - 毫秒數(shù),當數(shù)據(jù)驗證失敗后重試的間隔時間。默認值為 5 秒。
dedupingInterval - 重復驗證響應的緩存時間,以毫秒為單位。
focusThrottleInterval - 切換頁面焦點之后,重試時間的等待時間。
loadingTimeout - 最長等待請求的毫秒數(shù),超時會顯示加載錯誤消息。
import useSWR from 'swr'
const apiUrl = `/api/users/${userId}`
  const { data, error } = useSWR(apiUrl)

import useSWRImmutable from ‘swr/immutable’
useSWRImmutable 是一個 React Hooks,它是從 swr/immutable 庫中導入的。它可以在緩存過期之前重新使用數(shù)據(jù),以避免從服務器讀取數(shù)據(jù)的時間和網(wǎng)絡成本,幫助提高應用程序的性能和用戶體驗。
useSWRImmutable 并不是同步調用的。它是一個異步 Hook,在使用 useSWRImmutable 時,當我們作出數(shù)據(jù)請求時,它將使用本地緩存提供此數(shù)據(jù)。如果數(shù)據(jù)不存在于本地緩存中,則發(fā)起異步 API 請求,然后將結果存儲在緩存中。下一次嘗試獲取這個數(shù)據(jù)的時候,useSWRImmutable 只需返回本地緩存中的數(shù)據(jù)。

import useSWRImmutable from 'swr/immutable'
// const { data, error } = useSWRImmutable(key, fetcher, options)
const { data: userInfo } = useSWRImmutable('userInfoConfig', getUserconfig, {})

import useSWRMutation from ‘swr/mutation’
useSWRMutation提供了簡單且強大的方式來管理數(shù)據(jù)的更新和提交,從而讓我們輕松地構建出 CRUD 應用程序。useSWRMutation Hook 可以幫助我們輕松地使用 REST API 進行數(shù)據(jù)更新、提交和創(chuàng)建。與傳統(tǒng)的 useEffect 和 useState 結合使用方式不同,它可以處理HTTP請求的生命周期管理,并且還能自動更新緩存并在成功或失敗時提供API響應。

const { trigger: cancleTrigger } = useSWRMutation('canleBuild', cancleBuild) as any
cancleTrigger(obj).then(res => {
   if (res.code === '0') {
     notification.success({
       message: '提示',
       description: '取消構建成功',
     })
     M({ ...appBuildparamsInfo, jobName })
   }
 })

import { useSWRConfig } from ‘swr’
useSWRConfig 是一個 React Hook,可以讓我們輕松地配置和管理 useSWR Hook 的全局配置。假設我們要在所有使用 useSWR 的組件中統(tǒng)一配置 API 的緩存時間和錯誤重試次數(shù),我們可以使用 useSWRConfig 來實現(xiàn):

import { SWRConfig } from 'swr'
const { cache, mutate } = useSWRConfig({
    provider: () => new Map(),
    shouldRetryOnError: false,
    revalidateOnFocus: true,
    dedupingInterval: 10000,
    errorRetryInterval: 5000,
    errorRetryCount: 3
  })

到此這篇關于react:swr接口緩存的文章就介紹到這了,更多相關react:swr接口緩存內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • React使用Ant Design方式(簡單使用)

    React使用Ant Design方式(簡單使用)

    文章介紹了AntDesign組件庫,它是基于AntDesign設計體系的ReactUI組件庫,主要用于研發(fā)企業(yè)級中后臺產(chǎn)品,文章詳細講解了如何下載和按需引入antd組件庫,并通過一個小案例展示了如何使用antd進行布局和改造,最后,文章提醒大家在使用過程中可以參考官網(wǎng)的屬性介紹
    2024-11-11
  • React圖片壓縮上傳統(tǒng)一處理方式

    React圖片壓縮上傳統(tǒng)一處理方式

    這篇文章主要介紹了React圖片壓縮上傳統(tǒng)一處理方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-11-11
  • React使用setState更新數(shù)組的方法示例(追加新數(shù)據(jù))

    React使用setState更新數(shù)組的方法示例(追加新數(shù)據(jù))

    在?React?中,setState?是管理組件狀態(tài)的核心方法之一,然而,當我們需要更新狀態(tài)中的數(shù)組時,如何高效且安全地操作變得尤為關鍵,本文將詳細解析以下代碼的實現(xiàn)邏輯,幫助你掌握在?React?中追加數(shù)組數(shù)據(jù)的最佳實踐,需要的朋友可以參考下
    2025-03-03
  • React 中合成事件的實現(xiàn)示例

    React 中合成事件的實現(xiàn)示例

    本文主要介紹了React 中合成事件的實現(xiàn)示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2025-02-02
  • react-native 封裝選擇彈出框示例(試用ios&android)

    react-native 封裝選擇彈出框示例(試用ios&android)

    本篇文章主要介紹了react-native 封裝選擇彈出框示例(試用ios&android),具有一定的參考價值,有興趣的可以了解一下
    2017-07-07
  • React使用React.lazy和Suspense實現(xiàn)組件懶加載

    React使用React.lazy和Suspense實現(xiàn)組件懶加載

    React 提供了 React.lazy 和 Suspense 這兩個好東西,能讓我們實現(xiàn)組件的懶加載,下面就跟隨小編一起來了解一下如何使用它們實現(xiàn)懶加載的具體步驟吧
    2025-03-03
  • React淺析Fragments使用方法

    React淺析Fragments使用方法

    這篇文章主要介紹了React Fragments使用方法,關于react Fragments,React中一個常見模式是為一個組件返回多個元素。Fragments 可以讓你聚合一個子元素列表,并且不在DOM中增加額外節(jié)點
    2022-12-12
  • React精髓!一篇全概括小結(急速)

    React精髓!一篇全概括小結(急速)

    這篇文章主要介紹了React精髓!一篇全概括小結(急速),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-05-05
  • 如何創(chuàng)建自己的第一個React 頁面

    如何創(chuàng)建自己的第一個React 頁面

    React是用于構建用戶界面的JavaScript庫,本文主要介紹了如何創(chuàng)建自己的第一個React頁面,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 淺談React-router v6 實現(xiàn)登錄驗證流程

    淺談React-router v6 實現(xiàn)登錄驗證流程

    本文主要介紹了React-router v6 實現(xiàn)登錄驗證流程,主要介紹了公共頁面、受保護頁面和登錄頁面,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-05-05

最新評論