์ค๋ ฅํฅ์ ์์ฉ๋ฌธ์ ๋ค : ์์ฉ1. ํ์ ํ๋ง๋ค ์ญ์ ๋ฒํผ ๋ง๋ค๊ณ ๊ทธ๊ฑฐ ๋๋ฅด๋ฉด ์ํ์ด ์ญ์ ๋๊ฒ ๋ง๋ค๋ ค๋ฉด? ์์ฉ2. ์ฃผ๋ฌธํ๊ธฐ ๋ฒํผ ๋๋ฅผ ๋ ์ด๋ฏธ ์ํ์ด state์์ ์์ผ๋ฉด ์ถ๊ฐ๊ฐ ์๋๋ผ ๊ธฐ์กด ํญ๋ชฉ ์๋์ฆ๊ฐ๋ง? ์์ฉ1. ํ์ ํ๋ง๋ค ์ญ์ ๋ฒํผ ๋ง๋ค๊ณ ๊ทธ๊ฑฐ ๋๋ฅด๋ฉด ์ํ์ด ์ญ์ ๋๊ฒ ๋ง๋ค๋ ค๋ฉด? (Cart.js) # ์ํ๋ช
์๋ ๋ณ๊ฒฝํ๊ธฐ ์ญ์ ํ๊ธฐ {/*๋ฐ์ดํฐ ๊ฐฏ์์ ๋ง๊ฒ ํ ์์ฑํด๋ฌ๋ผ๊ณ ๋ฐ๋ณต๋ฌธ์ฐ๋ ๊ฒ๋ ์ข์๋ฏ์*/} {/*map์ผ๋ก html ์์ฑํ ๋ ์ผ๋จ {}๋ถํฐ ์ด๋ค */} { carts.map((item,i)=>{ return ( {carts[i].id} {carts[i].name} {carts[i].count} { dispatch((changeCount(carts[i].id))) }}>โ {/*๋ฒํผ์ ๋๋ฅด๋ฉด ์ํ์ด..
redux-toolkit
Redux store์ ์ ์ฅ๋ state๊ฐ array,object ์๋ฃ์ธ ๊ฒฝ์ฐ, state ๋ณ๊ฒฝ์ ์ข ํธ๋ฆฌํ๊ฒ ํ ์ ์๋ค ๊ทธ ๋ฐฉ๋ฒ์ ์์๋ณด์ redux state๊ฐ array/object์ธ ๊ฒฝ์ฐ ๋ณ๊ฒฝํ๋ ค๋ฉด let user = createSlice({ name : 'user', initialState : {name : 'kim', age : 20}, reducers : { changeName(state){ state.name = 'park' } } ์ง์ state๋ฅผ ์์ ํด๋ ๋ณ๊ฒฝ์ด ์ ๋ฉ๋๋ค array/object ์๋ฃ์ ๊ฒฝ์ฐ state๋ณ๊ฒฝ์ state๋ฅผ ์ง์ ์์ ํด๋ฒ๋ ค๋ ์ ๋๋๊น ์ง์ ์์ ํ์ญ์์ค. ๋ง์ฝ,๋ฒํผ์ ๋๋ ์๋ ๋ณ๊ฒฝํ๋ ค๋ ์๋ฃ์ +1์ ํด์ฃผ๊ณ ์ถ์ผ๋ฉด? let user = createSlice..
Redux ์ state๋ฅผ ๋ณ๊ฒฝํ๊ณ ์ถ๋ค๊ณ ์? ๊ทธ๋ฌ๋ฉด 3๊ฐ์ง ๋จ๊ณ๋ฅผ ๋ฐ๋ฅด์ธ์ store.js ์ state ๋ณ๊ฒฝํด์ฃผ๋ ํจ์๋ถํฐ ๋ง๋ค๊ณ ๊ทธ ํจ์๋ฅผ export ํด๋๊ณ ํ์ํ ๋ import ํด์ dispatch()๋ก ๊ฐ์ธ์ ํธ์ถํจ 1. store.js์ state ๋ณ๊ฒฝํด์ฃผ๋ ํจ์๋ถํฐ ๋ง๋ค์ด์ import { configureStore, createSlice } from '@reduxjs/toolkit' //reducer ๋ค์๋ state ๋ณ๊ฒฝํจ์๋ฅผ ๋ฃ๋๋ค let user = createSlice({ name: 'user', initialState: 'kim', reducers: { //reducers์ฆ ๋๋ค. changeName(state){ // ํ๋ผ๋ฏธํฐ state๋ ๊ธฐ์กดstate๋ฅผ ๋ปํจ return 'J..
Redux-toolkit๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ ์? props ์์ด๋ ์ปดํฌ๋ํธ๊ฐ state ๊ณต์ ๊ฐ ๊ฐ๋ฅํด์ง ,, ๋ฑ ์ปดํฌ๋ํธ๋ค์ด redux store.js ์์ state๋ค์ ๊ฐ์ ธ๋ค ์ธ ์ ์์ Redux store์ state ๋ณด๊ดํ๋ ๋ฒ ํฌ๊ฒ ๋๊ฐ์ง๋ก ๋๋ฉ๋๋ค 1. ๋จผ์ , createSlice() ๋ก state๋ฅผ ๋ง๋ค๊ณ 2. ์๋์ configureStore()์ ๋ฑ๋กํ๋ฉด ๋ฉ๋๋ค import { configureStore, createSlice } from '@reduxjs/toolkit' //์ฌ๊ธฐ์ state๋ฅผ ๋ง๋ค๊ฑฐ์ //createSlice๋ useState์ ๋น์ทํ ์ญํ ์. state ์์ฑ // state ํ๋๋ฅผ slice ๋ผ๊ณ ๋ถ๋ฆ //initialState ๋ค์๋ ์ด๊ธฐ๊ฐ state๋ฅผ ๋ฃ์ let u..