iPod Video White

๐Ÿ““ TIL

[220731] React useMemo , useReducer

k_m_jin 2022. 7. 31. 21:58

useMemo

  • ๊ฐ’์„ ์žฌํ™œ์šฉํ•˜๊ธฐ ์œ„ํ•ด ๋ฉ”๋ชจ๋ฆฌ์— ๊ฐ’์„ ์บ์‹ฑํ•˜๋Š” Hook
const value = useMemo(()=>{
	return ์บ์‹ฑํ•ด์„œ ๊ธฐ์–ตํ•˜๊ณ  ์žˆ์„ ๊ฐ’
},[dependency])

useReducer

state๊ฐ€ ๋ฐ”๋€” ๋•Œ๋งˆ๋‹ค ํ™”๋ฉด์„ ๋ Œ๋”๋ง ํ•ด์คŒ

  • Reducer : state ๋ฅผ ๋ณ€๊ฒฝํ•˜๋Š” ํ•จ์ˆ˜
  • Dispatch : reducer์—๊ฒŒ state๋ฅผ ๋ณ€๊ฒฝํ•ด๋‹ฌ๋ผ๋Š” ์š”๊ตฌ dispatch๋ฅผ ํ˜ธ์ถœํ•˜๋ฉด reducer๊ฐ€ ํ˜ธ์ถœ๋Œ
  • Action : Dispatch ์˜ ๋‚ด์šฉ

useReducer ์‚ฌ์šฉ

const [state, dispatch] = useReducer(reducer, ์ƒํƒœ์˜ ์ดˆ๊ธฐ๊ฐ’);

reducer ์‚ฌ์šฉ

const reducer = (state, action) => {
	//๋ณดํ†ต if ๋‚˜ switch ์‚ฌ์šฉ
}

dispatch ์‚ฌ์šฉ (action ์€ ๋ณดํ†ต ๊ฐ์ฒดํ˜•ํƒœ๋กœ)

	dispatch({type: '', payload:})
๋ฐ˜์‘ํ˜•

'๐Ÿ““ TIL' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[220807]nwitter  (0) 2022.08.07
[220804] React Redux  (0) 2022.08.04
[220729] ๋ฆฌ์•กํŠธ ์‹ค๊ฐ•  (0) 2022.07.29
[220728]  (0) 2022.07.29
[220726] React  (0) 2022.07.27