redux-actions 사용하기
02 Aug 2021 | Reactredux-actions 사용하기
1. redux-actions 왜 사용할까?
-
createAction을 통한 액션 생성 자동화
-
handleActions로 swtich문 대체
기존 방식의 reducer로 scope를 설정하는 결점을 보완
2. 사용법
- createAction
import {createAction} from 'redux-actions';
// 기존 액션 생성 방식
// export const increment = (index) => {
// type: 'INCREMENT',
// payload: index
// };
// 1. createAction 사용
export const increment = createAction('INCREMENT');
increment(3); // { type: 'INCREMENT', payload: 3 }
// 2. parameter가 여럿일 때
export const updateColor = createAction('UPDATE_COLOR');
// action에 객체를 넣어서 parameter로 전달
updateColor({ index: 3, color: '#ffffff'});
// { type: 'UPDATE_COLOR', payload: { index: 3, color: '#ffffff' }};
// 3. parameter 명시
export const createUser = createAction('CREATE_USER', ({index, name}) => ({index, name}));
createUser({index: 1, name: 'foo'});
- handleActions
import {handleActions} from 'redux-actions';
const reducer = handleActions({
INCREMENT: (state, action) => ({
counter: state.counter + action.payload
})
}, { counter: 0 });
action을 매핑한 후 defaultState 설정