SWR — это минималистичный API со встроенным кэшированием, ревалидацией и дедупликацией запросов. Он поддерживает ваш UI быстрым, согласованным и всегда актуальным — с помощью одного React хука.
Передайте ключ и fetcher в useSWR. Хук управляет запросом, кэширует ответ и поддерживает данные актуальными. Вы получаете data, error и isLoading для управления вашим UI.
import useSWR from 'swr'
function Profile() {
const { data, error, isLoading } = useSWR('/api/user', fetcher)
if (error) return <div>failed to load</div>
if (isLoading) return <div>loading...</div>
return <div>hello {data.name}!</div>
}SWR покрывает все аспекты скорости, корректности и стабильности, чтобы помочь вам создавать лучший опыт.
Небольшая поверхность API с поддержкой любого источника данных — REST, GraphQL или пользовательских fetchers.
Автоматическая фоновая ревалидация, обновления при фокусе/переподключении и утилиты для пагинации и потоковой передачи.
Построен для Suspense, совместим с SSR и SSG, полностью типизирован с самого начала.