• 카테고리

    질문 & 답변
  • 세부 분야

    프론트엔드

  • 해결 여부

    미해결

handleChangeInput () 에서 변수값

22.04.05 15:20 작성 조회수 113

0

const searchKeyword = event.target.value;  

this.setState( { searchKeyword} )

위의 this.setState 같은 경우에는 constructor 안의 this.state  의 searchKeyword를 변경한다는 의미일까요? 

construtor의  this.state 는 기본적으로 선언되어 있는 값인걸까요? 오버라이딩 해서 사용하는건가요? 

답변 1

답변을 작성해보세요.

0

클래스가 객체(instance가 되었을 때의 모양을 궁금해 하시는 것 같습니다. (아니면 다시 질문 해주세요)

생성자 함수(constructor)에서는 객체 초기화 역할을 하는데요. 여기서는 state 값을 설정했습니다. 그리고 나서 객체의 메소드인 setState()를 사용하는데요. 이건 상속한 Component 의 메소드를 호출한 것입니다. 

여기까지가 객체의 모양이고요.

setState()는 state 속성을 변경하기 위해 사용하는 메소드입니다. 직접 state 값을 변경할수 도 있지만 리액트에서는 그렇게 하지 말라고 합니다. state 값이 변할 때 리액트 엘리먼트를 다시 그려야 리액티브하게 동작할수 있는데요. 그래서 반드시 setState() 메소드로 state를 변경하도록 가이드 합니다.

마지막으로 setState, state는 모두 Component 클래스의 속성과 메소드입니다.