当前位置:首页 > 科技  > 软件

React Query 是做什么的?你知道吗?

来源: 责编: 时间:2024-06-11 17:50:10 283观看
导读最近因为工作的关系,开始接触 React Query[1]。不用不知道,一用真好用!React Query 是以前的叫法,现在叫 TanStack Query。之所以改名字,是因为这个团队发现,他们可以把这套方案推广到除 React 之外的其他框架中去。图片如

最近因为工作的关系,开始接触 React Query[1]。不用不知道,一用真好用!TvK28资讯网——每日最新资讯28at.com

React Query 是以前的叫法,现在叫 TanStack Query。之所以改名字,是因为这个团队发现,他们可以把这套方案推广到除 React 之外的其他框架中去。TvK28资讯网——每日最新资讯28at.com

图片图片TvK28资讯网——每日最新资讯28at.com

如图所示,目前(2024.06)最新的 v5 版本已经支持包含 React、Vue、Angular 在内的 5 大框架了。TvK28资讯网——每日最新资讯28at.com

那 React Query 到底是做什么的呢?TvK28资讯网——每日最新资讯28at.com

笼统地说,React Query 是用来管理接口请求的,包括增删改查所有类型的接口。管理的内容包括响应数据和请求状态,可以让你少些很多样板代码。TvK28资讯网——每日最新资讯28at.com

另外,一旦学会了 React Query 的使用,那么在其他框架中的应用也是一样,上手就快了。TvK28资讯网——每日最新资讯28at.com

不过 React Query 学习成本也高,要彻底熟练 React Query 的使用,就要学习很多概念,不过理解这些概念对于我们写出交互友好的页面又极其关键。TvK28资讯网——每日最新资讯28at.com

于是,我便萌生了写一个 React Query 系列文章的想法。本文就是第一篇,大概谈论它是做什么的,如何使用,有什么能力,后面再一篇一个具体话题单独讨论。TvK28资讯网——每日最新资讯28at.com

React Query 是从 v3 版本改名字的:TvK28资讯网——每日最新资讯28at.com

  • v3 以前(包括 v3)包名叫 react-query
  • 从 v4 开始包名改成 @tanstack/react-query 了

新旧版本改动不多[2],因为我现在用的是旧包,我就那它举例了。TvK28资讯网——每日最新资讯28at.com

安装 React Query

先创建一个 React 项目。TvK28资讯网——每日最新资讯28at.com

npm create vite@latest react-query-demos -- --template reactcd react-query-demos

安装 react-query[3] 依赖,启动项目。TvK28资讯网——每日最新资讯28at.com

npm install react-querynpm installnpm run dev

接下来删除 index.css 中的内容,再修改 App.jsx,注入 React Query 上下文依赖。TvK28资讯网——每日最新资讯28at.com

import { QueryClient, QueryClientProvider, useQuery } from 'react-query'const queryClient = new QueryClient()export default function App() {  return (    <QueryClientProvider client={queryClient}>      {/* ... */}    </QueryClientProvider>  )}

这一步是必须的,后续 React Query 的接口查询和修改等 API 能力都有赖于 queryClient。TvK28资讯网——每日最新资讯28at.com

快速开始

说了那么多,我们直接上一个 React Query 案例直观感受一下它的使用。TvK28资讯网——每日最新资讯28at.com

我们创建一个 <Example /> 组件,内容如下:TvK28资讯网——每日最新资讯28at.com

import { useQuery } from 'react-query'function Example() {  // 1)  const { isLoading, isError, error, data } = useQuery('repoData', () =>    fetch('https://api.github.com/repos/tannerlinsley/react-query').then(res =>      res.json()    )  )    // 2)  if (isLoading) return 'Loading...'  if (isError) return 'An error has occurred: ' + error.message      // 3)  return (    <div>      <h1>{data.name}</h1>      <p>{data.description}</p>      <strong> 
                

本文链接:http://www.28at.com/showinfo-26-93085-0.htmlReact Query 是做什么的?你知道吗?

声明:本网页内容旨在传播知识,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。邮件:2376512515@qq.com

上一篇: HTTP QUERY method,前端传SQL不再是笑话

下一篇: ASP.NET Core 性能优化指南

标签:
  • 热门焦点
  • MIX Fold3包装盒泄露 新机本月登场

    小米的全新折叠屏旗舰MIX Fold3将于本月发布,近日该机的真机包装盒在网上泄露。从图上来看,新的MIX Fold3包装盒在外观设计方面延续了之前的方案,变化不大,这也是目前小米旗舰
  • 量化指标是与非:挽救被量化指标扼杀的技术团队

    作者 | 刘新翠整理 | 徐杰承本文整理自快狗打车技术总监刘新翠在WOT2023大会上的主题分享,更多精彩内容及现场PPT,请关注51CTO技术栈公众号,发消息【WOT2023PPT】即可直接领取
  • 让我们一起聊聊文件的操作

    文件【1】文件是什么?文件是保存数据的地方,是数据源的一种,比如大家经常使用的word文档、txt文件、excel文件、jpg文件...都是文件。文件最主要的作用就是保存数据,它既可以保
  • 多线程开发带来的问题与解决方法

    使用多线程主要会带来以下几个问题:(一)线程安全问题  线程安全问题指的是在某一线程从开始访问到结束访问某一数据期间,该数据被其他的线程所修改,那么对于当前线程而言,该线程
  • 一文掌握 Golang 模糊测试(Fuzz Testing)

    模糊测试(Fuzz Testing)模糊测试(Fuzz Testing)是通过向目标系统提供非预期的输入并监视异常结果来发现软件漏洞的方法。可以用来发现应用程序、操作系统和网络协议等中的漏洞或
  • 雅柏威士忌多款单品价格大跌,泥煤顶流也不香了?

    来源 | 烈酒商业观察编 | 肖海林今年以来,威士忌市场开始出现了降温迹象,越来越多不断暴涨的网红威士忌也开始悄然回归市场理性。近日,LVMH集团旗下苏格兰威士忌品牌雅柏(Ardbeg
  • 拼多多APP上线本地生活入口,群雄逐鹿万亿市场

    Tech星球(微信ID:tech618)文 | 陈桥辉 Tech星球独家获悉,拼多多在其APP内上线了&ldquo;本地生活&rdquo;入口,位置较深,位于首页的&ldquo;充值中心&rdquo;内,目前主要售卖美食相关的
  • 腾讯VS网易,最卷游戏暑期档,谁能笑到最后?

    作者:无锈钵来源:财经无忌7月16日晚,上海1862时尚艺术中心。伴随着幻象的精准命中,硕大的荧幕之上,比分被定格在了14:12,被寄予厚望的EDG战队以绝对的优势战胜了BLG战队,拿下了总决
  • 苹果公司要求三星和LG Display生产「无边框」OLED iPhone显示屏

    据 The Elec 报道,苹果已要求其供应商为未来的 iPhone 型号开发「无边框」OLED 显示面板。苹果显然已要求三星和 LG Display 开发新的 OLED 显示面
Top