X-Git-Url: https://juplo.de/gitweb/?a=blobdiff_plain;f=src%2Fapp%2Freducers%2Fvorgang.ts;h=f129156dcf212e293123f69df0ae9cadf9fea943;hb=ebb80e32ee68bfbd82eebd42a2dc32cacd64e328;hp=fbfe4e813f2460d03ffa8dbdcdf299f2fb2ffe2d;hpb=87e5731e1210dbade5194afd7deaf877a255b2a1;p=examples%2Fangular-tour-of-heroes diff --git a/src/app/reducers/vorgang.ts b/src/app/reducers/vorgang.ts index fbfe4e8..f129156 100644 --- a/src/app/reducers/vorgang.ts +++ b/src/app/reducers/vorgang.ts @@ -1,12 +1,20 @@ import { createReducer, on } from '@ngrx/store'; -import { increment, decrement, reset } from '../actions/vorgang'; +import { Vorgang } from '../vorgang'; +import { create } from '../actions/vorgang'; -export const initialState = 0; +export interface State { + vorgaenge: Vorgang[]; +} + +export const initialState: State = { vorgaenge : [] }; -const REDUCER = createReducer(initialState, - on(increment, state => state + 1), - on(decrement, state => state - 1), - on(reset, state => 0), +const REDUCER = createReducer( + initialState, + on(create, (state, props) => { + const vorgaenge: Vorgang[] = [ props.vorgang ]; + state.vorgaenge.forEach(val => vorgaenge.push(Object.assign({}, val))); + return { vorgaenge }; + }) ); export function reducer(state, action) {