feat: add cookie article, some style fixes

This commit is contained in:
2025-05-23 15:02:39 +03:00
parent a0e6c5c03c
commit 1a18557ec6
6 changed files with 142 additions and 45 deletions

View File

@@ -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?