☀️ 기상시간 - 8:50
🌕 마감시간 - 24:30
1. 별다를바 없어보이는 나의 애증의 button component는 우선 이렇게 마무리하기로 했다. 보이지 않는 기능으로 콘솔에 출력되거나 경고창이 뜨는 기능을 추가하였다.
2. 세번째 애니메이션버튼은 눌렀을 때 보더를 움직이게 하고싶었는데 도저히 해결을 못해서... 찾다찾다가 찾은 기능. 누르면 outline이 생기고 눌리는 효과가 보이는 버튼으로 만들었다. 어떤 코드가 어떤 기능을 하는지는 내일 다시 제대로 확인해보려한다ㅎㅎ
3. useState를 사용해서 기능을 추가하고 싶었는데, 아직 counter에 사용되는 useState도 익숙하게 사용하지를 못해서 일단 패스했다ㅠㅠ
사실 해결하지 못했다. 문제는 내가 내 origin에서? merge를 해버려서 브런치가 새로 생겨버린 것 같다.. 그래서 현재 위치에서 원하는 곳으로 커밋을 할 수가 없는 것 같다.... 내일은 꼭 해결해서 다음주부터 정상적으로 커밋할 수 있게 환경을 만들것이다!
import React, { useState } from "react";
export default function App() {
const [count, setCount] = useState(0);
// const handleIncrease = () => {
// setCount(count + 1);
// }; 화살표 함수로 사용하는 예
function handleIncrease(e) {
e.preventDefault();
setCount(count + 1);
}
function handleDecrease(e) {
e.preventDefault();
setCount(count - 1);
}
function handleReset(e) {
e.preventDefault();
setCount(0);
}
function handleSubmit(e) {
e.preventDefault();
setCount(console.log(count + "이 제출되었습니다!"));
}
return (
<div className="App">
<p>{count}</p>
<form>
<button onClick={handleIncrease}>증가</button>
<button onClick={handleDecrease}>감소</button>
<button onClick={handleReset}>초기화</button>
<input type="button" value="제출" onClick={handleSubmit} />
</form>
</div>
);
}
count
)와 setState역할을 할 메소드는 변수 앞에 set을 붙혀서 사용(=setCount
)const [count , setCount] = useState()
useState
에 전달할 파라미터의 값으로는 state 변수를 초기화 할 값을 넣어주면 됨, 초기화 할 값이 없다면 null
.setCount
)를 호출하고 그 안에 업데이트 할 값을 넣어주면 됨this.state
로 불러왔는데, 함수형에서는 어떻게 하는거지,, 라는 의문을 가지고 있다가 console로 출력하면서 알게 되었다. 여기서는 그냥 바로 변수 count
가 곧 변경된 state의 값이 되는 것 같다!