亚洲 国产精品 日韩-亚洲 激情-亚洲 欧美 91-亚洲 欧美 成人日韩-青青青草视频在线观看-青青青草影院

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > 反應:創建使用取型自定義鉤子

反應:創建使用取型自定義鉤子

來源:千鋒教育
發布人:syq
時間: 2022-09-14 18:13:33 1663150413

  有關在 React 中創建自定義鉤子以跨所有組件使用 Fetch 的教程。

  從版本 16.8 開始,React 鉤子被正式添加到 React.js。除了內置的 Hooks 之外,我們還可以定義自己的 hook 來使用狀態和其他 React 特性,而無需編寫類。

創建使用取型自定義鉤子

  當您的組件邏輯需要由多個組件使用時,我們可以將該邏輯提取到自定義掛鉤中。例如,如果您需要從不同組件中的服務器獲取數據,則必須在每個組件中編寫 fetch 函數,然后添加用于處理加載和錯誤狀態的狀態。我們不必在每個組件中放置 fetch,而是可以創建自定義鉤子并在任何地方重用它。

  自定義鉤子以“use”前綴開頭。例如。useFetch

  步驟1

  讓我們創建一個新文件:useFetch.js

4

  在導入我們的鉤子并像任何其他鉤子一樣使用它。這是我們傳入URL以從中獲取數據的地方。現在我們可以在任何組件中重用這個自定義 Hook,從任何 URL 獲取數據。app.jsuseFetch

5

  步驟2:添加加載/錯誤狀態

  我們還可以添加附加參數和參數來指示數據是否正在獲取以及是否發生錯誤。loading error

6

  用法:

7

  步驟3:抓取“有什么”問題“?

  讓我們再看一遍這個代碼塊:

8

  一切似乎都很好,什么可能出錯?您幾乎可以在所有文章和視頻教程中找到此代碼塊。但我想在這里強調2點。如果:

  首先:服務器返回無效的 JSON 字符串

  接口 的方法 獲取 流并讀取它直到完成。它返回一個承諾,該承諾通過解析正文文本作為 的結果進行解析。json() Response Response JSON

  在第(1)行上,我們使用json()函數解析響應,但是如果服務器返回字符串而不是JSON字符串,則此塊將引發錯誤。假設我們的服務器在響應中只返回“OK”文本。

  res.status(200).send('OK')

  在這種情況下,我們將獲得成功狀態,但我們的抓取將引發錯誤:

9

  無效的 JSON 字符串

  第二:捕獲服務器錯誤

  如果服務器返回4xx或5xx狀態(例如404,500),我們仍將轉到阻止而不是阻止。因為這就是提取請求的工作方式。thencatch

  僅當發生網絡錯誤時,獲取承諾才會使用類型錯誤拒絕。由于 4xx 和 5xx 響應不是網絡錯誤,因此沒有什么可捕獲的。

  解決這些錯誤

  對于第一點,我們可以添加一個 try/catch 塊(用于和用于處理 Promise 中的錯誤的塊),如果發生錯誤,我們可以從響應中返回文本值。async/awaitcatch

10

  注意:我們在這里使用是因為我們可以使用或只能使用一次。否則,它將引發錯誤:clone json text

11

  對于第二點(處理服務器錯誤),我們需要檢查響應狀態(可以是或)。res.oktrue false

  法典

12

  最后的步驟

  將我們的承諾鏈替換為異步/等待

  添加類型腳本

  添加重新獲取選項

  有條件地獲取(不僅在組件裝載上)

  再次調用自定義掛鉤的唯一方法是在掛鉤中添加依賴項,并將其從組件中更改。useEffect

13

  例:假設每次單擊按鈕時都需要獲取數據。在按鈕單擊時,我們可以更改切換值,該值在useFetch鉤子中用作依賴項,數據將再次被提取。

14

  現在一切似乎都很好,但是如果我們需要通過單擊按鈕而不是在組件安裝時加載數據來加載數據,該怎么辦?如果我們嘗試添加如下條件,它將引發錯誤。這是因為鉤子不能在條件下使用。此代碼錯誤 ↓

15

  我們將收到此錯誤:

  Rendered more hooks than during the previous render.

  為了解決這個問題,我們可以將條件放在自定義鉤子中,而不是將其放在組件中。如果 提供了,值為 — 無需加載數據。refetchnull

17

  例子

  服務器返回一個字符串而不是 JSON。堆棧閃電戰演示

18

  通過單擊按鈕重新獲取數據。堆棧閃電戰演示

19

  在按鈕單擊而不是組件安裝時發出獲取請求。在這里,我們需要設置這將阻止在組件安裝時發送請求。param null

20

  發出發布/放置請求

21

  就是這樣。此外,我們還可以從自定義鉤子添加返回狀態代碼和錯誤消息。

  您可以在此處找到源代碼,并在此處找到堆棧閃電戰示例。

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
開班信息
北京校區
  • 北京校區
  • 大連校區
  • 廣州校區
  • 成都校區
  • 杭州校區
  • 長沙校區
  • 合肥校區
  • 南京校區
  • 上海校區
  • 深圳校區
  • 武漢校區
  • 鄭州校區
  • 西安校區
  • 青島校區
  • 重慶校區
  • 太原校區
  • 沈陽校區
  • 南昌校區
  • 哈爾濱校區
国产欧美精品一区二区色综合 | 男男车车的车车网站W98免费| 久久AV无码精品人妻糸列| 久久九九日本韩国精品 | 亚洲第一无码XXXXXX| 亚洲熟妇无码AV另类VR影视| 中文字幕无线码中文字幕免费| CHINESE东北体育生自慰| 丰满少妇好紧多水视频| 黑人巨大熟女高潮痉挛潮喷 | 扒开校花的粉嫩小泬| 国产激情久久久久影院蜜桃AV| 狠狠做五月深爱婷婷天天综合| 邻居把我弄的高潮三次面舞| 日本丰满护士爆乳XXⅩ| 性无码免费一区二区三区在线 | Z〇ZOZ〇女人另类ZOZ〇| 国产成人AV大片大片在线播放| 黑人巨大精品欧美久久| 免费一看一级毛片少妇丰满2| 欧美饥渴熟妇高潮喷水水| 天堂资源官网在线资源| 亚洲日韩在线中文字幕综合| HEYZO中文字幕无码| 国产精品呻吟AV久久高潮| 久久水蜜桃亚洲AV无码精品| 人人妻人人澡人人爽人人精直播| 亚洲 校园 欧美 国产 另类| 最新在线精品国产福利| 国产成人欧美精品视频| 久久熟妇人妻午夜寂寞影院| 漂亮人妻熟睡中被公侵犯中文版| 无套内射CHINESEHD| 中国人妻XXXXX免费看| 国产AV无码专区亚洲AV中文| 久久久久久毛片精品免费不卡 | 无码精品A∨在线观看十八禁| 亚洲AV中文AⅤ无码AV浪潮| 51CG10 吃瓜 爆料| 国产乱妇乱子视频在播放| 老头发狂的吸住她的乳尖| 手机看片AV永久免费无| 亚洲成av人无码| А天堂中文在线官网在线| 国内精品人妻无码久久久影院导航 | 亚洲日韩乱码中文无码蜜桃| 按摩师的巨大滑进我的身体| 精品国产污污免费网站| 日本边添边摸边做边爱喷水| 亚洲精品日韩AV专区| 被老汉耸动呻吟双性美人 | 亚洲AV成人无码一二三在线观看| √天堂资源最新版中文资源最新版| 成人黄网站片免费视频| 久久九九久精品国产免费直播| 漂亮人妻洗澡被公强 日日躁| 亚洲AV无码乱码在线观看代蜜桃| 啊灬啊灬啊灬快灬高潮了女| 狠狠色综合网站久久久久久久| 人人妻人人澡人人爽| 亚洲AV综合色区无码另类小说| 成人免费乱码大片A毛片| 久久久久九九精品影院| 五月丁香综合缴情六月小说| BDSM女囚BDSMTV| 精品国产AⅤ一区二区三区在线看| 日产精品一卡2卡三卡4卡乱码| 一区蜜桃中文不卡在线| 国产狂喷水潮免费网站WWW| 欧美亚洲日韩不卡在线在线观看 | 偷欧洲亚洲另类图片AV天堂| av在线一区二区三区| 精品无人区麻豆乱码1区2区新区 | 免费中文熟妇在线影片密芽 | 国产喷水1区2区3区咪咪爱AV| 欧洲北美性爱逼逼视频图片| 一本一道AV无码中文字幕麻豆 | 无码精品人妻一区二区| 宝贝把腿抬高点我让你更爽漫画| 巨大黑人一级毛片| 亚洲AV无码乱码在线观看裸奔 | 国产AV无码专区国产乱码 | 从你的全世界路过| 男女爽爽无遮挡免费视频| 亚洲日韩欧美成人一区二区三区| 国产成人精品免费久久久久| 欧美老熟妇手机在线观看| 又白又大的两座峰| 精品一卡二卡≡卡四卡日产乱码| 无码国内精品人妻少妇蜜桃视频| 第二书包网高H肉辣文| 欧美大屁股XXXX高跟欧美黑人| 亚洲性高清SUV| 黑人又大又粗又硬XXXXX免费| 熟女熟妇伦AV网站| 波多野结衣的影片| 欧美人与动性XXXXX交性| 中国老B亂伦AV| 久久精品国产99久久丝袜蜜桃| 亚洲AV永久无码精品天堂动漫| 国产成人免费AV片在线观看| 日本乱熟人妻精品乱码涩爱| AV潮喷大喷水系列无码| 秘密の花园动漫在线| 伊人久久久AV老熟妇色| 九月在线 视频 在线观看| 亚洲AV成人一区二区三区AV| 国产欧美国产综合每日更新| 天天躁日日躁狠狠躁| 成人爽A毛片免费| 日韩系列 无码迅雷| 部长的夫人的味道中字| 美女床上喷水在线观看| 中国小帅男男GAYXNXX| 久碰人澡人澡人澡人澡人视频| 亚洲第一最快AV网站| 国产精品IGAO视频网| 玩弄放荡人妻一区二区三 | 中日AV高清字幕版在线观看 | 午夜精品久久久久久不卡| 国产精品99久久久久久WWW| 揉大N呻吟水多大棒子| 顶级大但人文艺术视频 音乐| 日本55丰满熟妇厨房伦| 错位关系C1V1一块五花肉| 日韩精品无码人成视频手机| 车内挺进尤物少妇紧窄| 色一情一乱一伦一区二区三区| 从后面糟蹋成功视频| 色哟哟网站在线观看入口| 国产ΑV在线ΑV天堂AⅤ国产| 少妇人妻互换不带套| 国产AV在线观看| 无码精品国产一区二区免费| 国产真人无码作爱免费视频APP | 九九九九精品视频在线观看| 一本大道一卡2卡三卡4卡国产| 麻豆国产97在线 | 欧洲| 97香蕉超级碰碰碰久久兔费| 人妻熟妇乱又伦精品视频| 丰满少妇大力进入| 性色AV一区二区三区无码| 精品久久久无码中文字幕| 伊人色综合一区二区三区影院视频 | 亚洲丰满性熟妇ⅩXXOOO| 久久久久人妻精品一区| 18禁丝瓜视频安卓版| 人妻三级日本香港三级极97| 国产A∨国片精品青草视频| 性欧美大战久久久久久久久| 久久WWW成人_看片免费不卡| 中文字幕日本人妻久久久免费| 青青草国产精品亚洲专区无码| 成人年无码AV片在线观看| 无码人妻精品一区二区蜜桃不卡| 果冻传媒亚洲区二期| 伊人久久大香线蕉亚洲五月天| 欧美日韩免费专区在线| 高清人人天天夜夜曰狠狠狠狠| 亚洲AV成人片无码网站网一区| 久久久久无码精品国产不卡| CAOPORN最新地址| 天堂А√在线最新版中文下载| 黑人与中国娇小美女AV在线| 曰曰摸天天添天天湿| 热RE99久久6国产精品免费| 国产精品久久久久9999不卡| 亚洲色偷偷偷网站色偷一区人人藻 | 浪荡人妻共32部黑人大凶器电影 | 精品人妻少妇AV一区二区三区| 自拍偷自拍亚洲精品被多人伦好爽 | 激情内射人妻1区2区3区| 最新中文AV岛国无码免费播放| 色噜噜狠狠一区二区三区果冻| 国内精品久久久久影院优| 18未满禁止免费69影院| 熟女少妇精品一区二区| 久久超碰97人人做人人爱| おやすみせくよ晚安免费影院 | 日本熟熟妇XXXXX精品熟妇| 国产佗精品一区二区三区| 中国熟妇浓毛HDSEX| 熟妇高潮一区二区三区| 久久精品国产99精品最新| 被公侵犯肉体中文字幕无码| 亚洲AV午夜成人影院老师机影院| 男人把大JI巴放进女人有视频| 国产CHINESE男男GAY| 亚洲在AV极品无码高清| 日本无人区一线影视| 精品人妻少妇一区二区三区在线 | 伊伊人成亚洲综合人网7777| 日韩精品无码一区二区中文字幕| 狠狠躁夜夜躁AV网站中文字幕| JLZZJLZZ全部女高潮| 亚洲成人av在线| 人与禽交VIDEOSGRATI| 久久国产精品成人片免费| 处破女处破全过程| 夜色爽爽影院18禁妓女影院|