리덕스 툴킷
createSlice의 결과물이 action creators와 reducers
createSlice 함수 안에는 객체가 인자로 들어간다.
const todosSlice = createSlice({
name: "",
initialState: "",
reducers: "",
})
reducers에는 객체로 구성되어 있고, todoList에서 쓰이는 reducer로 구성해 보면
addTodo, removeTodo, switchTodo가 있고 얘네들은 함수이다,
이 함수 하나하나가 action creator의 이름이 됨
외부에서 이것을 호출하면 type과 payload를 가진 action을 만들어줌.
const todosSlice = createSlice({
name: "todos",
initialState,
reducers: {
addTodo: () => {},
removeTodo: () => {},
switchTodo: () => {},
},
});
todosSlice는 createSlice의 결과 객체.
여기에는 action도 있고 reducer도 있으며
todosSlice.action에는 action creator들이 들어있다.
todosSlice.action을 호출하면 type과 payload를 가진 객체가 만들어진다.
export const { addTodo, removeTodo, switchTodo } = todosSlice.actions;
export default todosSlice.reducer;
리액트에서는 원래 불변성을 유지해야 하지만
리덕스 툴킷은 불변성을 유지 안 해줘도 알아서 해준다,
그래서 push 메서드를 써도 가능함!
'내배캠 4기 React - TIL' 카테고리의 다른 글
230119 TIL (0) | 2023.01.19 |
---|---|
230117 TIL (0) | 2023.01.17 |
230113 TIL (0) | 2023.01.13 |
230110 TIL (0) | 2023.01.11 |
220106 TIL (0) | 2023.01.09 |