createSlice

    React : 상품을 장바구니에 추가하기 (immer, redux, action, payload)

    조건 상세페이지에서 버튼을 누르면 장바구니페이지에 해당 상품이 업데이트된다. 풀이 store.js import { createSlice } from '@reduxjs/toolkit' let cart = createSlice({ name : 'cart', initialState : [ {id : 0, name : 'White and Black', count : 2}, {id : 1, name : 'Red Knit', count : 1} ] , reducers : { ... addCart(state, action){ const newCart = action.payload; return [...state, newCart]; } } }) export let { changeName, changeCount, add..

    React : state 공유하는 "Redux" (state 변경함수/파라미터/함수분리)

    state 변경하는 법 useState()와는 다른 방식을 써야 한다. state를 수정해주는 함수를 만들고, 그 함수를 실행해야 할 때 store.js에 요청해야 한다. store.js에서 state 변경함수 만들기 let user = createSlice({ name : 'user', initialState : 'kim', reducers : { changeName(){ // state 값 변경함수 1 return 'Park' }, changeFullname(){ // state 값 변경함수 2 return 'Kim Noran' } } }) export let { changeName, changeFullname } = user.actions // 함수 export store.js에 변경함수를 만든다...

    React : state 공유하는 "Redux" (state 보관/사용)

    store에 state 보관하는 법 import { configureStore, createSlice } from '@reduxjs/toolkit' let 작명 = createSlice({ name : 'state 이름', initialState : 'state 값' }) let user = createSlice({ name : 'user', initialState : 'kim' }) let stock = createSlice({ name : 'stock', initialState : [10,11,12] }) export default configureStore({ reducer: { 작명 : createSlice만든거.reducer, user : user.reducer, stock : stock.red..