useCallback
vs. useMemo
useCallback : 특정 함수를 새로 만들지 않고 재사용하고 싶을 때
useMemo : 특정 결과값을 재사용할 때
const onChange = useCallback(
e => {
const { name, value } = e.target;
setInputs({
...inputs,
[name]: value
});
},
[inputs]
)
❗
함수안에서 사용하는 상태 혹은 props가 있다면 꼭,
deps
배열 안에 포함시켜야 된다.
만약, deps
배열 안에 함수에서 사용하는 값을 넣지 않게된다면, 함수 내에서 해당 값들을 참조할 때 가장 최신값을 참조할 것이라 보장할 수 없다.
props
로 받아온 함수가 있다면, 이 또한 deps
에 넣어주어야한다.
반응형
'TIL > 리액트' 카테고리의 다른 글
20. useReducer를 사용하여 상태 업데이트 로직 분리하기 (0) | 2022.07.28 |
---|---|
19. React.memo를 사용한 컴포넌트 리렌더링 방지 (0) | 2022.07.26 |
17. useMemo를 사용하여 연산한 값 재사용하기 (0) | 2022.07.22 |
16. useEffect를 사용하여 마운트/언마운트/업데이트 시 할 작업 설정하기 (0) | 2022.07.21 |
15. 배열 항목 수정하기 (0) | 2022.07.19 |
댓글