SWR Hook 是否可以在纯 React 或 Create React App 项目中使用?
SWR Hook能否在纯React/Create React App项目中使用
完全可以正常使用。SWR是独立的开源React数据请求库,本身并没有和Next.js做强制绑定,官方推荐在Next.js中使用仅因为二者同属Vercel团队开发,适配性更佳,不代表SWR只能在Next.js项目中运行。
- 依赖要求:SWR的唯一强制依赖是版本≥16.8.0的React,只要你的React项目满足该版本要求,无论是Create React App搭建的项目、Vite搭建的纯React项目,还是其他自定义脚手架搭建的React项目,都可以正常接入使用。
- 接入方式:直接使用包管理工具安装即可,不需要做任何Next.js相关的适配配置:
安装命令:npm install swr或yarn add swr/pnpm add swr
安装完成后直接在组件内导入useSWRHook即可按照官方规范使用。 - 功能差异:Next.js中可以使用SWR和Next.js路由、服务端组件配合的增强特性,但SWR的缓存、重验证、错误重试等核心功能,在所有React项目中的表现完全一致,没有功能阉割。
基础使用代码示例:
import useSWR from 'swr' // 自定义请求方法,可根据需求替换为axios等其他请求库 const fetcher = (url) => fetch(url).then(res => res.json()) function DemoComponent() { // 发起请求,获取接口返回数据、加载状态、错误信息 const { data, isLoading, error } = useSWR('https://api.example.com/user', fetcher) if (isLoading) return <div>加载中</div> if (error) return <div>请求出错,请稍后重试</div> return <div>当前用户:{data.userName}</div> }
内容的提问来源于stack exchange,提问作者Anna
相关产品推荐
相关产品推荐

