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..
useRef 알아보기useRef는 다음과 같이 사용된다.const ref = useRef(value);// ref => { current. : value}인자로 넣어준 값이 current에 존재하게된다.const ref = useRef("메가커피"); // ref => { current. : "메가커피"}ref.current = "스타벅스" // ref => { current. : "스타벅스"}언제 어디서든 값이 변경이 가능하다.제일 중요한것!ref 는 unmount 되기 전까지 컴포넌트 전생에 주기에 유지된다.useRef는 언제 사용하는가?첫번째. 저장 공간의 용도state는 값이 변경되면 리렌더링 되어 컴포넌트 내부 변수들이 초기화가 된다. 반면 ref는 값이 변해도 리렌더링 되지 않아 화면의 불..
useState란?component가 상태 가지게 할 수 있다.아래와 같은 코드 형태으로 존재한다.const [state, setState] = useState(초기값);예시 코드로 보기const [time, setTime] = useState(12);// time = 12// setTime(10) 을 할 경우 time 의 값이 10으로 변경된다,React는 setState() 요소를 사용하면 화면을 업데이트 즉 다시 렌더링 시켜준다실제 코드로 살펴 보기'use client';import { useState } from 'react';const Mytime = () => { const [time, setTime] = useState(1); const handleClick = () => { let..
useEffect는 컴포넌트가 3가지 상태일때 동작된다.Mount : 화면에서 생성될때Upadate : 화면에서 업데이트 될때UnMount : 화면에서 사라질때useEffect는 기본적으로 인자로 callback 함수를 인자로 받는다.useEffect 의 형태첫번째, useEffect의 인자로 callback 함수만 받는 경우useEffect(() => { // code.});해당경우는 component가 처음 렌더링될때 , 그리고 화면 다시 리렌더링 될 때 실행된다.두번째, useEffect의 인자로 callback 함수와 배열을 받는 경우 (dependency array)useEffect(() => { // code.} , [value] );component가 처음 렌더링될때 , 그리고 depen..