feat: add cookie article, some style fixes
This commit is contained in:
@@ -22,34 +22,34 @@ sidebar_position: 3
|
||||
- RTK Query интегрируется с Redux DevTools, что позволяет отслеживать состояние запросов и кэша.
|
||||
|
||||
Основные хуки RTK Query:
|
||||
1. useQuery:
|
||||
1. **useQuery:**
|
||||
- Используется для выполнения **GET**-запросов.
|
||||
- Возвращает объект с данными, состоянием загрузки (`isLoading`), ошибкой (~~error~~) и другими полезными полями.
|
||||
- Пример: `useGetPostsQuery()`.
|
||||
2. useMutation:
|
||||
2. **useMutation:**
|
||||
- Используется для выполнения **POST**, **PUT**, **DELETE** и других запросов, изменяющих данные на сервере.
|
||||
- Возвращает функцию для выполнения мутации и объект с состоянием (`isLoading`, `isError` и т.д.).
|
||||
- Пример: `useAddPostMutation()`.
|
||||
3. useLazyQuery:
|
||||
3. **useLazyQuery:**
|
||||
- Используется для выполнения запросов по требованию (например, при нажатии кнопки).
|
||||
- Пример: `const [fetchPost, { data }] = useLazyGetPostByIdQuery()`.
|
||||
|
||||
## Преимущества RTK Query:
|
||||
1. Минимум boilerplate-кода:
|
||||
1. **Минимум boilerplate-кода:**
|
||||
- RTK Query автоматически генерирует редьюсеры, действия и хуки.
|
||||
2. Кэширование:
|
||||
2. **Кэширование:**
|
||||
- Данные автоматически кэшируются, что предотвращает лишние запросы.
|
||||
3. Интеграция с Redux:
|
||||
3. **Интеграция с Redux:**
|
||||
- RTK Query легко интегрируется с существующим Redux-стором.
|
||||
4. Оптимизация:
|
||||
4. **Оптимизация:**
|
||||
- Автоматическое управление подписками и ререндерами.
|
||||
5. Поддержка TypeScript:
|
||||
5. **Поддержка TypeScript:**
|
||||
- RTK Query полностью поддерживает TypeScript, что делает её удобной для типизированных проектов.
|
||||
|
||||
## Недостатки RTK Query:
|
||||
1. Ограниченная гибкость:
|
||||
1. **Ограниченная гибкость:**
|
||||
- RTK Query ориентирована на REST API и GraphQL. Для более сложных сценариев может потребоваться ручная настройка.
|
||||
2. Зависимость от Redux:
|
||||
2. **Зависимость от Redux:**
|
||||
- Если в проекте не используется Redux, RTK Query может быть избыточной.
|
||||
|
||||
## Когда использовать RTK Query?
|
||||
|
||||
Reference in New Issue
Block a user