useAsyncEffect
useAsyncEffect 개선하기
- useEffect 말고 useAsyncEffect를 굳이 써야하는 이유는?
- 가령 useEffect 안에서 API fetch와 같은 동작을 수행해야할 때가 있을 것이다
- 쿠키에 accessToken이 생기면 그 토큰이 유효한 토큰인지 확인하는 API 호출이 필요한 경우가 있다
- 근데.. 굳이 useAsyncEffect 이름을 붙여가면서까지 비동기처리 함수를 그대로 넘겨줄만한 이점이 있을까?
- (2025.09.24 업데이트) toss에서 출시한 react-simplikit useAsyncEffect 구현체
- 개인적으로는 useEffect, useCallback, useRef 등 바닐라 리액트 훅을 제대로 이해하고 웬만하면 그대로 사용하는게 코드 품질을 유지할 수 있는 방향같다. 물론 잘 랩핑해서 선언적인 방식으로 포장하면 당연히 좋지만 아직까지의 경험상 좀만 지나면 개념조차도 희석되어 리마인드하는게 부지기수인데, 그걸 한 번 더 랩핑한 훅으로 작성돼있다면..
- 근데 또 생각해보면 useEffect 안에 비즈니스로직이 길게 나열돼있는 것도 컨텍스트 취득에 작지 않은 걸림돌이다. 차라리 간결하게 선언적인 훅들로 추상화돼있는게 컨텍스트 취득에 도움이 되지 않을까?
- A Chain Reaction - Dan Abramov에서 언급하듯 결국 인간인 우리 개발자들이 원하는건 '인간의 언어'로 잘 작성된 코드를 쓰기 원하는 것이고, 일정 수준 이상의 추상화에 거부감을 느끼는 것은 똑똑해지기를 거부하는 바보같은 짓이 아닐까.. 싶다