54 / 98
Как работает механизм хуков внутри React (linked list)?
Хуки хранятся как связный список (linked list) в Fiber-ноде компонента. Каждый вызов хука при первом рендере (mount) создаёт новый узел и добавляет его в конец списка. При повторных рендерах (update) React проходит по тому же списку в том же порядке, сопоставляя каждый вызов useState, useEffect и т.д. с соответствующим узлом. Именно поэтому хуки нельзя вызывать условно — порядок должен совпадать.