All of these achieves the same thing. The last one is the perfect one.
export function counterReducer( state: ICounterMore = {count: 0, message: 'hello'}, action: ICounterAction ) // : ICounterMore, automatically inferred from return produce { return produce(state, draft => { switch (action.type) { case CounterKind.INCREMENT: ++draft.count; break; case CounterKind.DECREMENT: --draft.count; draft.message = 'hey'; break; } }); } export const counterReducer = ( state: ICounterMore = {count: 0, message: 'hello'}, action: ICounterAction ) // : ICounterMore, automatically inferred from return type of produce => produce(state, draft => { switch (action.type) { case CounterKind.INCREMENT: ++draft.count; break; case CounterKind.DECREMENT: --draft.count; draft.message = 'hey'; break; } }); export const counterReducer = produce(( draft: ICounterMore = {count: 0, message: 'hello'}, action: ICounterAction ) // : ICounterMore, automatically inferred from return draft => { switch (action.type) { case CounterKind.INCREMENT: ++draft.count; break; case CounterKind.DECREMENT: --draft.count; draft.message = 'hey'; break; } return draft; });
No comments:
Post a Comment