react 강의 9장 map에서 내주신 숙제를 하다가 오류가 발생했는데요
App 컴포넌트 안에서
function likeOnClick(index) {
let copy = [...likeCount]
copy[index] = likeCount[index] + 1
setLikeCount(copy)
};
해당 함수를 만들어놓고
return문 안에서
{
postName.map(function(value, index) {
return (
<div className="list" key={index}>
<h4>{value}
<span onClick={() => {
let copy = [...likeCount]
copy[index] = copy[index]+1
setLikeCount(copy)
}
}>👍</span>
{likeCount[index]}
</h4>
<p>8월 6일 발행</p>
</div>
)
})
}
이렇게 map 함수를 만들어 호출했습니다.
코딩애플님 정답과 다른 점은 map 함수 내부에서 정의해서 함수를 사용하느냐 호출하느냐인거 같습니다.
state 변경 함수가 사용될 때마다 리렌더링이 되어 map 함수가 처음부터 사용되기 때문에 무한루프가 발생하는 것 같은데 함수를 호출하지 않고 정의해서 바로 사용하는 것도 다른 점이 없지 않나요?
해당 부분이 궁금해 글 남깁니다.
감사합니다.