update state, api, arch
This commit is contained in:
@@ -2,4 +2,44 @@
|
||||
sidebar_position: 6
|
||||
---
|
||||
|
||||
# React-query
|
||||
# React-query
|
||||
|
||||
**TanStack Query** (ранее известная как **React Query**) — это мощная библиотека для управления состоянием данных в React-приложениях. Она фокусируется на работе с асинхронными данными, такими как запросы к API, и предоставляет инструменты для кэширования, синхронизации, фонового обновления и управления состоянием загрузки и ошибок. TanStack Query значительно упрощает работу с данными, делая код более чистым и эффективным.
|
||||
|
||||
## Основные возможности TanStack Query:
|
||||
1. **Кэширование данных:**
|
||||
- Автоматически кэширует данные и управляет их актуальностью.
|
||||
- Повторные запросы к одним и тем же данным не выполняются, если они уже есть в кэше.
|
||||
2. **Фоновое обновление:**
|
||||
- Автоматически обновляет данные в фоновом режиме, чтобы поддерживать их актуальность.
|
||||
3. **Интеграция с React:**
|
||||
- Предоставляет хуки (например, `useQuery`, `useMutation`) для удобной работы с данными в функциональных компонентах.
|
||||
4. **Оптимизация запросов:**
|
||||
- Управляет подписками на данные, предотвращая лишние запросы и ререндеры.
|
||||
5. **Поддержка TypeScript:**
|
||||
- TanStack Query полностью поддерживает TypeScript, что делает её удобной для типизированных проектов.
|
||||
6. **Инструменты разработчика:**
|
||||
- Встроенные DevTools позволяют отслеживать состояние запросов и кэша.
|
||||
|
||||
## Преимущества TanStack Query:
|
||||
1. **Минимум boilerplate:**
|
||||
- TanStack Query автоматически управляет кэшированием, обновлением и ошибками.
|
||||
2. **Производительность:**
|
||||
- Оптимизирует запросы и предотвращает лишние ререндеры.
|
||||
3. **Гибкость:**
|
||||
- Подходит для работы с REST API, GraphQL и другими источниками данных.
|
||||
4. **Интеграция с React:**
|
||||
- Предоставляет удобные хуки для работы с данными.
|
||||
5. **Поддержка TypeScript:**
|
||||
- Полностью поддерживает TypeScript.
|
||||
|
||||
## Недостатки TanStack Query:
|
||||
1. **Ориентация на данные:**
|
||||
- TanStack Query фокусируется на асинхронных данных и не подходит для управления состоянием приложения в целом.
|
||||
2. **Кривая обучения:**
|
||||
- Некоторые концепции (например, инвалидация кэша) могут быть сложными для новичков.
|
||||
|
||||
## Когда использовать TanStack Query?
|
||||
- Если ваше приложение активно взаимодействует с API.
|
||||
- Если требуется кэширование данных и автоматическое обновление UI.
|
||||
- Для приложений с большим количеством асинхронных запросов.
|
||||
|
||||
Reference in New Issue
Block a user