import { Component, OnInit } from '@angular/core';
+import { VorgangService } from '../vorgang.service';
+import { Vorgang } from '../vorgang';
+import { Store, select } from '@ngrx/store';
+import { Observable } from 'rxjs';
+import { tap, map } from 'rxjs/operators';
+import { create } from '../actions/vorgang';
+import { State } from '../reducers/vorgang';
@Component({
selector: 'app-vorgang',
})
export class VorgangComponent implements OnInit {
- vorgang = "Hello world!";
+ vorgang$: Observable<Vorgang[]>;
- constructor() { }
+ constructor(
+ private service: VorgangService,
+ private store: Store<{ vorgang: { vorgaenge: Vorgang[] }}>) {
+ this.vorgang$ = store.pipe(select('vorgang')).pipe(
+ tap((state) => console.log(`New state: ${JSON.stringify(state)}`)),
+ map((state: State) => state.vorgaenge));
+ }
ngOnInit(): void {
}
+ create(data: string) {
+ this
+ .service
+ .create({ vbId: 'peter', vorgangId: '1' , zustand: data })
+ .subscribe(result => this.store.dispatch(create( { vorgang: result })));
+ }
}