인프런 커뮤니티 질문&답변
useState()괄호안에 함수를 넣을때..궁금한점..
작성
·
582
2
궁금한점이 있어요!
컴포넌트 함수의 속성값을 받아올때는 { }중괄호를 사용하여
함수값을 호출하는데
useState()괄호안에 파라미터값을 적용할때에
useState({CAT1})이 아니라 useState(CAT1)으로 선언하는
이유를 알 수 있을까요..ㅠㅠㅠㅠ
답변 1
1
진유림
지식공유자
헷갈리실 수 있겠네요.
컴포넌트 함수의 속성값을 받아올 때 중괄호를 사용하는게 아니고,
컴포넌트 함수에는 첫 번째 인자로 prop이 내려오고, 이를 바로 풀어서 쓰는 문법으로 중괄호를 쓴거예요.
<MyComponent title="하이"/>
function MyComponent(prop) {
console.log(prop.title); // "하이"
}
이 코드에서 prop 이란 이름으로 함수 첫 번째 인자를 쓰는것 대신 자바스크립트의 문법인 구조분해할당 을 사용하면 다음과 같이 코드를 줄일 수 있는거죠.
function MyComponent({title}) {
console.log(title); // "하이"
}
구조분해할당 MDN 문서를 보면 더 이해가 잘 가실거예요~
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment





