state, setState
state
컴포넌트에서 본인이 가지고 있는 데이터
상태가 변경되면
render()
함수가 재실행된다.주의사항
상태 데이터를 직접 수정하면 좋지 않다. (비동기적으로 동작하기 때문에 예상치 못 한 이슈 존재하고, PureComponent에서 정상적으로 동작 하지 않는다.)
데이터 변경이 필요한 경우는 새로운 state 객체를 만들어서 수정하는 것이 좋다. (아래 코드 참고)
setState()
state
를 변경할 때setState()
함수를 사용해서 변경해야 한다.setState()
함수가 호출이 되면 리액트는this.state
현재 상태와,setState(새로 업데이트되는 상태)
함수의 인자로 전달된 새로운 오브젝트를 비교해서 업데이트가 필요한 경우 해당 컴포넌트의render()
를 호출해서 UI를 다시 그린다.
Last updated