작성
·
254
0
안녕하세요 강사님 책도 가지고 있는데 책읽을 시간이 없어 강의로 필요한 부분만 보았는데요
useEffect로 onMounted됐을때 실행시킬 함수들을 빈배열을 넣고 사용하는 것보다,
useOnMounted라는 훅으로 만들어서 실행시키는게 더 낫다고 하셨는데요, 이유가 무엇인가요?
저는 mounted직후는 빈배열을 useEffect에 넘겨주면서 사용했었고 딱히 불편함을 느낀적이 없어서 이해가 잘안갑니다😭
왜 그게 더 나은지 설명이 부족한것 같아서 여쭤봅니다😭 단순히 가독성 때문인가요? 자세히 알고싶어요!
감사합니다.
답변 1
1
안녕하세요
가독성 때문이 맞습니다.
의존성 배열은 리액트에서 의도한대로 관리하는 게 좋은데요
영상에서처럼 userId 같은 값을 사용했다면 의존성 배열에 입력해야 하는거죠
규칙대로 하지 않고 작성하면 다른 사람이 코드를 봤을 때, 누군가 깜빡해서 빈 배열을 입력한 것인지 or 마운트 시점에만 동작하라고 그렇게 한 것인지 구분하기 힘들겁니다.
이렇게 관리하기 위해 eslint 에서 exhaustive-deps 룰을 error 로 설정하시는 것도 추천드립니다
강사님 감사합니다!!