-
[리액트 기초] 리액트 Hook - useState,useEffect,useReducer,useMemo,useCallback,useRefReact/기초 2023. 3. 13. 18:39
useState
함수형 컴포넌트
const [value, setValue] = useState(''); const [name,setName] = useState(''); return ( <div> <button onClick={()=>setValue(value+1) } {value} <input value={name} onChange(e=> setName(e.target.value)) /> {name} </div> )
useEffect
렌더링 될때마다 특정 작업 수행
useEffect(()=> { console.log() }, [] : 마운트 [name] : 특정 값 업데이트 }
useReducer
useState보다 더 다양한 컴포넌트 상황에 따라 다른 값으로 업데이트
function reducer(state,action) { return { ...state, [action.name] : action.value } } const Info = () => { const [state,dispatch] = useReducer(reducer, { name :' ', nicName : ' ' }) const {name, nicName } = state; const onChange = e => { dispatcj(e.target); } }
useMemo
함수형 컴포넌트 내부 연산 최적화
const avg = useMemo(()=> getAvg(list), [list]); <div> {avg} </div>
useCallback
useMomo와 비슷하지만 렌더링 상황 최적화할 때 사용된다.
useRef
const inputEl = useRef(null) <input ref={inputEl} /> //이벤트 {inputEl.current.focus() }
'React > 기초' 카테고리의 다른 글
[React] immer를 사용해서 불변성 유지하기 (0) 2023.03.16 [리액트 기초] 이벤트 핸들링, ref, 컴포넌트 반복, 컴포넌트 라이프 사이클 메서드, 컴포넌트 스타일링, 자동완성 (0) 2023.03.13 [리액트 기초] 컴포넌트, 클래스형 컴포넌트, 함수형 컴포넌트, props, 구조분해, state,useState (0) 2023.03.13 [리액트 기초] Vs code 설정 , 자동 저장, Fragment, App.js, 조건문, 인라인 스타일링, 특징, 주석 (0) 2023.03.13