기존의 낡은 redux를 최신 redux로 바꿔주자.
redux-toolkit 공식 문서대로 ㄱㄱ
import { createSlice } from '@reduxjs/toolkit'
createSlice
는 객체이며 한마디로 Reducer
만드는 것을 도와준다!name,initialState,reducers
이 세가지가 들어있어야 한다!🌟import { createSlice } from "@reduxjs/toolkit"; ////
let initialState = {
productList: [],
selectItem: null,
};
function productReducer(state = initialState, action) {
let { type, payload } = action;
switch (type) {
case "GET_PRODUCT_SUCCESS":
return { ...state, productList: payload.data };
case "GET_PRODUCT_DETAIL_SUCCESS":
return { ...state, selectItem: payload.data };
default:
return { ...state };
}
}
export default productReducer;
(기존 코드 주석처리하고 새로ㄱㄱ)
import { createSlice } from "@reduxjs/toolkit";
let initialState = {
productList: [],
selectItem: null,
};
// function productReducer(state = initialState, action) {
// let { type, payload } = action;
// switch (type) {
// case "GET_PRODUCT_SUCCESS":
// return { ...state, productList: payload.data };
// case "GET_PRODUCT_DETAIL_SUCCESS":
// return { ...state, selectItem: payload.data };
// default:
// return { ...state };
// }
// }
// export default productReducer;
createSlice({
name: "product",
initialState,
reducers: {
getAllProducts(state, action) { //return이랑 ...state 필요없음!
state.productList= action.payload.data;
},
},
});