Observableの使いかた
使い方だけメモ。
@Injectable() export class Service { dataSource = new Subject<any>; dataStreams = this.dataSource.asObservable(); getData { this.http.get(url) .subscribe((data: any) => { // データソースのnextに値を入れる度に // ストリームのsubscribeに値が流れる this.dataSource.next(data); }); } }
@Component({ provider: [ Service ] }) export class Component { data: any; constructor(private service: Service) { // データソースのnextに値が入る度に // ストリームからのsubscribeに値が流れる this.service.dataStream .subscribe((data: any) => { this.data = data; }); } }