๐๐
Redux๋ React ์ ํ๋ฆฌ์ผ์ด์ ์์ ์ ์ญ ์ํ ๊ด๋ฆฌ๋ฅผ ์ฉ์ดํ๊ฒ ํด์ฃผ๋ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋๋ค. React ์ปดํฌ๋ํธ๋ค ์ฌ์ด์์ ์ํ๋ฅผ ๊ณต์ ํ๊ฑฐ๋ ๊ด๋ฆฌํด์ผํ ๋ Redux๋ฅผ ์ฌ์ฉํ๋ฉด ํธ๋ฆฌํฉ๋๋ค. Redux์ ๊ธฐ๋ณธ ๊ฐ๋ ์ ๋จ์ผ ์คํ ์ด(Store)์ ์ํ(State)๋ฅผ ์ ์ฅํ๊ณ , ์ก์ (Action)์ด๋ผ๋ ๊ฐ์ฒด๋ฅผ ํตํด ์ํ๋ฅผ ์ ๋ฐ์ดํธํ๋ ๋ฐฉ์์ผ๋ก ๋์ํฉ๋๋ค.
dispatch๋ Redux ์คํ ์ด์ ์ก์ ์ ๋ณด๋ด๋ ํจ์์ด๋ฉฐ, ์คํ ์ด๋ ํด๋น ์ก์ ์ ๋ฐ์ ์ํ๋ฅผ ๋ณ๊ฒฝํ๋ ์ญํ ์ ์ํํฉ๋๋ค. ์ด๋ฅผ ํตํด ์ํ ๊ด๋ฆฌ๋ฅผ ์ค์ ์ง์คํํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ๋ฐ์ดํฐ ํ๋ฆ์ ์์ธก ๊ฐ๋ฅํ๊ณ ์ ์ง ๋ณด์๊ฐ ์ฉ์ดํ๊ฒ ๋ง๋ญ๋๋ค.
์คํฌ๋ฆฐ์ท 2023-07-10 ์คํ 8.20.32โ
import React from 'react'
import {useDispatch} from 'react-redux'
const Count2 = () =>{
const dispatch = useDispatch();
const handlerAdd = () =>{
dispatch({type: "LOGIN", payload : true})
const handlerRemove =()=>{
dispatch({type: "LOGOUT", payload : false})
}
return(
<div>
<button onClick={handlerAdd}>๋ก๊ทธ์ธ</button>
<button onClick={handlerAdd}>๋ก๊ทธ์ธ</button>
</div>
)
{handlerAdd}์ ๊ฐ์ด ์ค๊ดํธ๋ฅผ ์ฌ์ฉํ๋ ์ด์ ๋ jsx์์ javascriptํํ์์ ์ฝ์ ํ๊ธฐ ์ํจ์ด๋ค.

์ฌ๊ธฐ์ ์ฌ์ฉ๋ useSelector ํจ์๋ react hook ํจ์์ค ํ๋์ธ๋ฐ
useSelector ํจ์๋ ์คํ ์ด์ ์ํ๋ฅผ ํ์ธํ๊ณ ํด๋น ์ํ์ ๊ฐ์ ์ ๊ทผํ๋๋ก ํด์ค๋ค.

action->reducer->store->view
'react' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๋ฆฌ์กํธ ์ํ๊ด ์ฝ๋ ๋ถ์ (0) | 2023.07.17 |
---|---|
๋น๋๊ธฐ๋ฅผ ์ดํดํด๋ณด์. (0) | 2023.07.11 |
#props (0) | 2023.07.07 |
#state (0) | 2023.07.07 |
๋ฆฌ์กํธ ์ง๋ขฐ์์์ ์๋ฆฌ์ 3๊ณณ ๋ฐฐ์น (0) | 2023.07.07 |