37 lines
1.4 KiB
Markdown
37 lines
1.4 KiB
Markdown
|
|
---
|
|||
|
|
title: Создать хук
|
|||
|
|
---
|
|||
|
|
|
|||
|
|
# Создать хук
|
|||
|
|
|
|||
|
|
Инструкция по созданию кастомного React-хука. Определи где он живёт, реализуй по правилам.
|
|||
|
|
|
|||
|
|
## Прочитай перед началом
|
|||
|
|
|
|||
|
|
- applied/hooks.md — правила хуков
|
|||
|
|
- basics/naming.md — именование (префикс `use`)
|
|||
|
|
- basics/typing.md — типизация параметров и возврата
|
|||
|
|
|
|||
|
|
## Шаги
|
|||
|
|
|
|||
|
|
1. Определи область хука:
|
|||
|
|
- Утилитарный (не привязан к бизнес-логике) → `shared/hooks/`
|
|||
|
|
- Привязан к фиче/сущности → `model/` внутри модуля
|
|||
|
|
|
|||
|
|
2. Создай файл с именем `use-{name}.ts`.
|
|||
|
|
|
|||
|
|
3. Реализуй хук по правилам (→ applied/hooks.md).
|
|||
|
|
|
|||
|
|
4. Экспортируй через публичный API модуля.
|
|||
|
|
|
|||
|
|
## Смежные триггеры
|
|||
|
|
|
|||
|
|
- triggers/develop/create-component.md — если хук используется в новом компоненте
|
|||
|
|
- triggers/develop/connect-store.md — если хук подключает стор
|
|||
|
|
|
|||
|
|
## Проверь себя
|
|||
|
|
|
|||
|
|
- [ ] Имя начинается с `use` (→ basics/naming.md)
|
|||
|
|
- [ ] Параметры и возвращаемое значение типизированы
|
|||
|
|
- [ ] Хук экспортирован через публичный API модуля
|