์ตœ๋Œ€ 1 ๋ถ„ ์†Œ์š”

Redux(ํ•˜)๐Ÿ“


๊ธฐ์ดˆ ๋ฌธ๋ฒ•๐Ÿšฉ

index.js

function reducer(state = datastate, action) {

    if (action.type === "add") {

        let copy = [...state];

        copy.push(action.payload);

        return copy;

    }
}

App.js

props.dispatch( { type : "add", payload : {a,b,c,d} } );

โ€˜Redux์˜ ์ •๋ณด์ „๋‹ฌโ€™

dispatch์˜ type์˜†์— ์ž‘๋ช…ํ•˜๊ณ  ๋ณด๋‚ด๊ณ  ์‹ถ์€ ๋ฐ์ดํ„ฐ๋ฅผ ์“ด๋‹ค.

action.์ž‘๋ช… โžก๏ธ ๋ฉ”์„œ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋“ฏ์ด ๋ณด๋‚ด์ค€ ๋ฐ์ดํ„ฐ๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.

์ฆ‰, โ€˜{ type : โ€œaddโ€, payload : {a,b,c,d} }โ€˜์ด ๋ถ€๋ถ„์ด reducerโžก๏ธaction์˜ ํ”„๋กœํผํ‹ฐ๋ผ๋Š” ๊ฒƒ์ด๋‹ค.



App.js

function state(state) {
  return {
    a: state.reducer,
    b: state.reducer2,
  };
}

export default connect(state)(App);
----------------------------------------------

import { useSelector, useDispatch } from 'react-redux';

function App() {

    let ์ž‘๋ช… = useSelector( (state)=>(state.reducer) )
    let ์ž‘๋ช… = useSelector( (state)=>(state.reducer2) )
    let ์ž‘๋ช… = useDispactch();

    return

}

export default App;

โ€˜Redux ๋ถˆ๋Ÿฌ์˜ค๊ธฐ ์…‹ํŒ… ์‹ ๋ฌธ๋ฒ•โ€™

์‹ ๋ฌธ๋ฒ•์„ ์“ฐ๋ฉด ๋”์ด์ƒ props๋ฅผ ์•ž์— ๋ถ™์ด์ง€ ์•Š์•„๋„ ๋œ๋‹ค.

์—…๋ฐ์ดํŠธ: