탭 만들기 '전환 애니메이션주기'에서
useEffect(()=>{
setTImeout(()=>{ setFade('end') }, 100)
return ()=>{
setFade('')
}
}, [탭])
와 같이 automatic batch를 피하기 위해 타이머를 사용하였는데
Detail 컴포넌트 전체에 전환 애니메이션을 줄 때는
useEffect(()=>{
setFade2('end')
return ()=>{
setFade2('')
}
},[])
와 같이 타이머를 주지 않는 이유가 무엇인가요?
첫 번째 코드에서는 cleanup 함수가 useEffect의 본 함수?가 실행되기 전에 수행되어 연속해서 state를 변경하기 때문에 automatic batch가 발생하는 것이고
두 번째 코드에서는cleanup 함수가 unmount시 실행되어 시간차를 두고 state를 변경하기 때문에 automatic batch가 발생하지 않는 것인가요?