The Counter-Example stores an object as state
[examples/angular-tour-of-heroes] / src / app / reducers / vorgang.ts
index fbfe4e8..974efa5 100644 (file)
@@ -1,12 +1,22 @@
 import { createReducer, on } from '@ngrx/store';
 import { increment, decrement, reset } from '../actions/vorgang';
 
-export const initialState = 0;
+export interface State {
+  counter: number;
+}
+
+export const initialState: State = { counter: 0 };
 
 const REDUCER = createReducer(initialState,
-  on(increment, state => state + 1),
-  on(decrement, state => state - 1),
-  on(reset, state => 0),
+  on(increment, state => {
+    return { counter: state.counter + 1 };
+  }),
+  on(decrement, state => {
+    return { counter: state.counter - 1 };
+  }),
+  on(reset, state => {
+    return { counter: 0 };
+  }),
 );
 
 export function reducer(state, action) {