티스토리 뷰
728x90
반응형
const [counter, setCounter] = useState<number>(0);
// 1번쨰 방법
setCounter(counter + 1)
// 2번쨰 방법
setCounter((current) => current + 1);
둘 다 왠만한 상황에서는 문제가 없지만
많은 컴포넌트를 갱신하거나 데이터를 갱신하고, 또는 해당 useState를 많은곳에서 활용할때 1번째 방법은 문제가 발생할 수 있다.
리액트는 성능을 위해 state값 변경을 단일 업데이트로 한꺼번에 처리하기도 한다.
기본적으로 자바스크립트는 비동기 언어이므로 사용자가 의도하지 않은 순서,
의도되지 않은 시점에서의 동작이 될 수 있다
2번쨰의 경우 무조건 업데이트가 적용된 시점에서 더하기 때문에 오동작 우려가 없다
728x90
'프로그래밍 > React' 카테고리의 다른 글
react app(webpack, craco) -> vite로 변경하기 (0) | 2022.08.14 |
---|---|
리액트 라우터에서 페이지 이동시마다 특정 이벤트 실행. (0) | 2021.09.17 |
리액트에서 zxing/library를 활용하여 qrcode, barcode를 읽을 경우 예제코드 (0) | 2021.09.15 |
React 카메라 on/off 문제 (0) | 2021.09.14 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- iframe
- #업데이트가 이상하게 될떄
- contributer
- contributor
- HWP
- 팀별 분석
- 웹어셈블리
- 마크다운
- #노력만 가상한 글
- #팀별 분석
- Rust
- #useState
- 7위를 하는 이유
- KBL
- 배포
- 노력만 가상한 글
- youtube
- JavaScript
- API
- 그래프
- craco
- #그래프
- webassembly
- ffmpeg
- 무관의 왕
- WASM
- #useState 특징
- vtie
- 티스토리API
- vscode
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함