🪁react/react 실습

검색폼 삭제기능 구현[버튼을 누르거나, 검색어를 지우면 reset 실행]

하얀성 2024. 1. 2. 10:28
 handleReset() {
    // this.setState({searchKeyword: "" })

    this.setState(() => {
      return { searchKeyword: ""}
    }, ()=> {
      console.log("TODO: handleReset", this.state.searchKeyword);
    })
  }

 

setState()는 비동기로 동작한다.

 

이런 방식으로 this.setState를 사용하면, 상태 업데이트가 완료된 후 특정 작업을 수행할 수 있다. 이는 React에서 상태 업데이트가 비동기적으로 이루어지기 때문에 유용하다. 상태 업데이트가 즉시 반영되지 않을 수 있으므로, 업데이트가 완료된 이후에 특정 로직을 실행해야 할 때 콜백 함수를 사용한다.


  handleReset() {
    this.setState({searchKeyword: "" })
    console.log("TODO: handleReset", this.state.searchKeyword);
   
  }

 

이런식으로 동작을 설정하면 값이 비어지고, 빈 문자열이 콘솔에 출력될 것 같지만...

비동기로 동작하기때문에 Reset 버튼을 누를 대의 그 문자값이 그대로 콘솔에 출력된다.