M中
interface IAction {
type: ActionType;
payload?: any;
}
/*type IAction = {
type: ActionType;
};*/
enum ActionType {
LoadDataInit = 'LoadDataInit',
LoadDataSuccess = 'LoadDataSuccess',
LoadDataError = 'LoadDataError',
UpdateData = 'UpdateData',
ToggleModal = 'ToggleModal',
GoBack = 'GoBack',
GoBackWithConfirmation = 'GoBackWithConfirmation',
SetIsLoading = 'SetIsLoading',
SaveSuccessWithExit = 'SaveSuccessWithExit',
SaveSuccessWithRedirect = 'SaveSuccessWithRedirect',
SaveSuccess = 'SaveSuccess',
}
const initialData: IOperationPlan = {
id: '',
};
const reducer: React.Reducer<IState, IAction> = (state, action) => {
const { data, value, isLoading, redirectId } = action.payload;
switch (action.type) {
case ActionType.LoadDataInit: