redux-actions
有两大法宝createAction
和handleActions
.
createAction
原来创建action
:
const startAction = () => ({ type: START });
使用redux-actions
创建action
:
import { createAction } from 'redux-actions'; const startAction = createAction(START);
handleActions
原来reducer
操作state
写法要使用switch
或if else
来匹配:
function timer(state = defaultState,action) { switch (action.type) { case START: return { ...state,runStatus: true }; case STOP: return { ...state,runStatus: false }; case RESET: return { ...state,seconds: 0 }; case RUN_TIMER: return { ...state,seconds: state.seconds + 1 }; default: return state; } }
使用redux-actions
`reducer操作
state`:
const timer = handleActions({ START: (state,action) => ({ ...state,runStatus: true }),STOP: (state,runStatus: false }),RESET: (state,seconds: 0 }),RUN_TIMER: (state,seconds: state.seconds + 1 }),},defaultState);原文链接:https://www.f2er.com/react/304538.html