ignite-boilerplate-andross-typescript
Version:
Customized version of ignite Andross With TypeScript Support.
30 lines (24 loc) • 721 B
text/typescript
import * as Immutable from "seamless-immutable";
import {Reducer} from "redux";
import {LoginState} from "./Types";
export const INITIAL_STATE = Immutable({
step: 1,
phoneNumber: '',
varCode: '',
prefixNumber: '+98',
userName: ''
});
export const reducer: Reducer<LoginState> = (state: LoginState = INITIAL_STATE, action) => {
switch (action.type) {
case 'login_step':
return {...state, step:action.payload};
case 'set_phone_number':
return {...state, phoneNumber:action.payload};
case 'set_verify_code':
return {...state, prefixNumber:action.payload};
case 'set_user_name':
return {...state, userName:action.payload};
default:
return {...state};
}
};