< 오늘은 너구나,, 덤벼라 >
오늘도 에러창과 땀빼는중,,
포켓몬 게임에서 풀숲 들어가면 1초마다 몬스터를 만나서 귀찮았는데
비..슷..해..
그냥 가볍게 넘어가려고 했지만 구글에 검색하였을때 이미 내가 찾아봤던 기록이 나와서 이번에는 정리를 해야겠다 ㅋ
setTimeout 을 사용하여 자동 이미지 슬라이드를 구현하던 도중 나타난 에러다.
분명 오류가 생길 부분이 없었는데?.. 아닌가 내가 부족해서 그런가? 를 떠올리며 검색했다.
컴퓨터는 거짓말을 하지않는다.. 내가 실수쟁이 였다 ..
에러의 발생 원인은 메서드를 이용할때 주의점과 동일하다고 보면 된다.
메서드를 중괄호와 같이 사용할 때는 중괄호 안에 return 이 존재하여야 한다.
하지만 오류가 발생했을때 나의 Code를 보면, 그 어디에도 return 이 존재 하지 않았다..
어딨냐 너,,
따라서 아래와 같이 에러를 해결 할 수 있다.
- 메서드에서 중괄호 사용 시 return 을 꼭 넣는다.
- 메서드를 사용할 때 요소를 () 소괄호를 사용하여 묶는다.
내가 선택한 핸들링 방법은 #1번이다.
현재 나의 코드에서 return 할 값이 있었음에도 실수를 했기 때문이다..
지금과 같은 상황이 아닌 return 할 값이 없었다면 #2번으로 진행해야 한다.
useEffect(() => {
const timeoutId =
setTimeout(() => setCurrentIndex(()=> {}), );
return () => clearTimeout(timeoutId);
});
< 오늘도 개똥이는 성장한다 ! >