기존 코드를 다음과 같이 작성해 보세요.
Counter.js - button
<button // onClick을 통해 버튼이 클릭되었을 때 호출할 함수를 지정합니다. onClick={() => { this.setState(prevState => { return { number: prevState.number + 1 }; }); // 위 코드와 아래 코드는 완전히 똑같은 기능을 합니다. // 아래 코드는 함수에서 바로 객체를 반환한다는 의미입니다. this.setState(prevState => ({ number: prevState.number + 1 })); }} > +1 </button>
화살표 함수에서 값을 바로 반환하고 싶다면 코드 블록 { }를 생략하면 됩니다. 예를 들어, 파라미터 a와 b를 받아 와서 합을 구해 주는 함수를 작성하고 싶다면 다음과 같이 작성할 수 있습니다.
const sum = (a, b) => a + b;
onClick에서 두 번째로 this.setState 함수를 사용할 때는 화살표 함수에서 바로 객체를 반환하도록 했기 때문에 prevState => ({ })와 같은 형태로 코드가 이루어집니다.
브라우저에서 버튼을 눌러 보세요. 숫자가 2씩 올라가나요?