React Hooks (пользовательские или не пользовательские) должны начинаться с префикса use
. Кроме того, согласно документации React:
1) Хуки должны вызываться из кода React, а не из обычных функций JS. Следовательно, область действия Hooks ограничена миром кода React и имеет больше возможностей для работы с кодом React. Вместо JS обычные функции могут использоваться во всех приложениях, но в соответствии с рекомендациями кода реагирования код более согласован с синтаксисом реакции.
2) В компонентах на основе классов хуки не будут работать, но будут работать регулярно функции будут.
3) В обычных функциях JS вы не можете получить доступ к useState
, useEffect
, useContext
et c. но реагировать на пользовательские крючки я могу.