- 액션을 주면, 그 액션이 적용되어 달라진 결과를 만들어 줌.
- 함수형태 이며 Pure Fuction(동일한 인풋이 들어왔을때 항상 같은 output이 반환 되어야함),
Immutable형태여야 한다.
- 액션을 받아서 스테이트를 리턴하는 구조
- 인자로 들어오는 previousState 와 리턴되는 newState는 다른 참조를 가지도록 해야함.
함수의 인자값으로 현재 스테이트 값, action을 받는다.
import {ADD_TODO} from "./action";
// 초기 state 형태 선언
const initialState = [];
function todoApp(previousState = initialState, action) {
switch (action.type) {
case ADD_TODO:
return [...previousState, action.todo];
default:
return previousState;
}
}