<aside> ๐งท const [state,dispatch] = useReducer(reducer, initialArgs, init?)
</aside>
: ์ด๋ฒคํธ ํธ๋ค๋ฌ(ํจ์)์ ์ฌ๋ฌ ์ํ ์ ๋ฐ์ดํธ ํจ์ ์คํ ์ฝ๋๊ฐ ๋ถ์ฐ๋ ์ปดํฌ๋ํธ๋ ๊ด๋ฆฌ๊ฐ ์ด๋ ต๊ธฐ ๋๋ฌธ์ ์ธ๋ถ์ ๋ชจ๋ ์ํ ์ ๋ฐ์ดํธ ๋ก์ง์ reducer ํจ์๋ฅผ ํตํด ๊ด๋ฆฌ
const [state, dispatch] = useReducer(reducer, { age: 42 });
state๊ฐ ์ด๋ป๊ฒ ์ ๋ฐ์ดํธ ๋๋์ง ์ง์ ํ๋ ํจ์ state,action์ ์ธ์๋ก ๋ฐ์ state๋ฅผ ๋ฐํํจ
์ด๊ธฐ state๊ฐ ๊ณ์ฐ๋๋ ๊ฐ
๋ชจ๋ ๋ฐ์ดํฐ ํ์ ์ด ํ ๋น๋ ์ ์์
์ด๊ธฐ state๋ฅผ ๋ฐํํ๋ ์ด๊ธฐํ ํจ์
์์ผ๋ฉด initialArg๊ฐ ์ด๊ธฐ state ์์ผ๋ฉด init(initialArgs)๋ฅผ ํธ์ถํ ๊ฒฐ๊ณผ๊ฐ
ํ์ฌ state. ์ต์ด์ ๋ ๋๋ง์ init(initial Args)๋ก ์ค์
dispatch ํจ์๋ ์ด๋ค ๊ฐ๋ ๋ฐํํ์ง ์์
function handleClick() {
dispatch({ type: 'incremented_age' });