useReducer 란?useReducer는 useState와 동일하게 state값을 관리하는데 사용한다.다만 useReducer는 여러개의 하위값을 포함하는 state를 관리할때 사용한다.{ username: 'Wonyoung', email: 'wonyoung@example.com', hobbies: ['reading', 'traveling', 'coding'], friends: [ { name: 'Alice', age: 25 }, { name: 'Bob', age: 30 } ], notifications: [ { id: 1, message: 'Welcome to the platform!', read: false }, { id: 2, message: 'Your pro..
전체 글
개발공부리뷰블로그useLayoutEffect란?useLayoutEffect와 useEffect는 거의 비슷한 역할을 한다.useEffect(() => { //...}, [state]) useLayoutEffect(() => { //...}, [state]) 구조도 비슷하고 기능도 비슷한데 다른점은 effect가 실행되는 시점이다.useEffect의 경우 화면이 업데이트된 이후에 effect가 실행된다.useLayoutEffect는 effect 실행 이후에 화면이 업데이트가 된다.useLayoutEffect를 통해 생기는 이점은 effect를 먼저 실행하기 때문에 사용자가 보는 UI를 보다 정교하게 보일 수 있다.코드로 알아보기'use client';import { useEffect, useLayoutEffec..
useCallback 이란?useCallback 은 useMemo와 달리 값을 저장하는게 아닌 함수 그 자체를 memoization 해준다.const calculate = useCallback((num) => {return num + 1;} , [item]}코드가 다음과 같다면 num + 1 의 내용의 함수를 메모리에 저장하여 필요할때 마다 가지고 와서 사용한다.Javascript 에서 함수는 사실 객체의 한 종류이다.useCallback 의 구조const calculate = useCallback( 함수 , 의존성 배열}useCallback 은 위의 구조와 같은 형태를 가지고 있다.여기서 함수는 메모리에 저장되는 함수로 (num) => {return num + 1;} 라는 함수가 메모리에 저장된다. 이..
useMemo 란?useMemo는 컴포넌트를 최적화(optimization) 하는 리액트 훅이다.컴포넌트 최적화의 훅은 useMemo 말고 useCallback 도 존재한다.useMemo에서 Memo는 Memoization 을 의미한다Memoization은 동일한 값을 리턴하는 함수를 반복적으로 호출하는 경우, 처음의 값을 메모리에 저장해서 함수를 호출할때 마다 메모리의 값을 불러오는 기법이다. 값을 캐싱해서 불러오는 것이라고 생각하면 된다.함수형 컴포넌트가 렌더링 되는 과정에서 생기는 문제함수형 컴포넌트는 렌더링 될때 마다 Component 함수를 호출하기 때문에 모든 변수를 초기화하는 과정을 겪는다.fuction calculate(){ return 999}function Component() { co..
custom hook 이란?커스텀 훅이란 나만의 리액트 훅 이다.필요한 커스텀 훅을 만들어 놓으면, 필요할 때 마다 사용이 가능해서 재사용성이 높아 효율적이다.custom hook 만들어보기useInput 만들어보기'use client';import { ChangeEvent, useState } from 'react';const CustomHook = () => { const [inputValue, setInputValue] = useState(''); const handleChange = (e: ChangeEvent) => { setInputValue(e.target.value); }; const handleSubmit = () => { alert(inputValue); }; r..