• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    해결됨

DiaryItem 컴포넌트 props 질문이요!

23.08.29 18:08 작성 조회수 229

0

리액트에서 배열 사용하기 1-리스트 렌더링 강의에서 질문있습니다.

DiaryItem 컴포넌트에서 diaryList에있는 author, content.. 등 정보를 사용하려면 props 로 내려받아야 하는걸로 알고 있는데..

DiaryList 컴포넌트에서는 key 값만 적혀있는데 따로 map을 사용하면 props가 DiaryItem까지 전달되는건가요?

{diaryList.map((it) => (
      <DiaryItem key={it.id}{...it} />

 

const DiaryItem = ({
  author,
  content,
  created_data,
  emotion,
  id,
}) => {
return
}
 
import DiaryItem from "./DiaryItem";

const DiaryList = ({ diaryList }) => {
  console.log(diaryList);
  return (
    <div className="DiaryList">
      <h2> 일기 리스트</h2>
      <h4>{diaryList.length}개의 일기가 있습니다.</h4>
      <div>
    {diaryList.map((it) => (
      <DiaryItem key={it.id}{...it} />
    ))}
    </div>
    </div>
  );
};

export default DiaryList;

답변 1

답변을 작성해보세요.

0

안녕하세요 이정환입니다.

아래 코드에서 {...it} 의 역할이 바로 it 이라는 객체에 저장된 모든 프로퍼티를 다 Props로 전달하는 역할입니다.

{diaryList.map((it) => (
      <DiaryItem key={it.id}{...it} />

원래라면 <DiaryItem key={it.id} content={it.content} date={it.date} ... /> 이런식으로 하나 하나 일일이 객체에 들어있는 값을 전달해야 했겠지만 전개연산자 { ...it } 을 활용하면 한방에 다 보내줄 수 있습니다.

관련해서는 우리 강의의 Props 영상을 다시 참고해보시기 바랍니다.

또는 아래의 링크를 참고해보셔도 좋을 것 같아요 😃

https://reactjs.winterlood.com/c89cba30-39b6-4094-85f6-f87a16842028#0bcbea71f3ca47d4afa1b83b646087c8

조은수님의 프로필

조은수

질문자

2023.08.31

감사합니다!! 이해되었씁니당.~~