더북(TheBook)

User 컴포넌트를 구조 분해 할당을 사용하도록 바꾸면 다음과 같습니다. props 객체는 userObj 속성과 clickHandler 속성을 전달하므로 개별 변수로 분해하면 props.을 생략하고 더 깔끔하게 사용할 수 있습니다.

src/components/User.tsx

export default function User({ userObj, clickHandler }: { ----- ➊
  userObj: { name: string; age: number; };
  clickHandler: () => void;
}) {
  return (
    <>
      <p>name: {userObj.name}</p> ----- ➋
      <p>age: {userObj.age}</p>
      <button onClick={clickHandler}>클릭</button>
    </>
  );
}

{ userObj, clickHandler }는 props 객체에서 userObjclickHandler라는 두 속성을 꺼내는 구조 분해 할당 구문입니다.

구조 분해 할당으로 props를 받아오면 JSX에서 props.userObj.name 대신 userObj.name으로 간결하게 접근할 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.