Why declare hooks at the top level?
Ensures Consistent Behavior
- 리액트는 여러가지 hooks가 있다. 그 중 대표적으로 UseEffect, UseState , UseCallback 등의 hooks가 있는데, 이러한 훅들은 순차적인 order로 선언되어야 하며 이러한 order로 부터 리액트는 render 시에 어떠한 순서에서 어떠한 훅을 호출해야 하는지 파악 할 수 가 있다.
Improve Readability and Maintainability
- top에 hook들(useEffect, useState, useMemo 등)을 선언 함으로써, 보다 쉽게 파악할 수 있기에 유지보수가 용이해진다.
Prevents Memory Leaks and Bugs
- hook을 조건문에서 설정한다거나, loop에 설정할 수 있다면 이는 memory leak이나 사이드 이펙트를 발생시킬 가능성이 커진다. 따라서, hook을 선언할 수 있는 특정 rule 들안에서 제한적으로 hook을 작성함으로써 memory leak 이나 사이드 이펙트를 최소화 시킬 수 있다
'FrontEnd > React' 카테고리의 다른 글
MobX vs Redux Toolkit (0) | 2023.09.19 |
---|---|
간단한 리덕스의 세 가지 규칙 (0) | 2023.01.30 |
JSX 문법에서 왜 여러 Element 들은 하나의 최상위 element에 감싸져 랜더 되어야 하는건가? (0) | 2023.01.16 |
VScode 에서 코드 save 할 때마다 prettier 동작 (0) | 2022.06.29 |
Implement multiple styles into the inner style prop (0) | 2022.06.26 |