rxjs里的Observable對象如何消費
- 2020 年 12 月 8 日
- AI
測試代碼:
import { of } from 'rxjs';
import { Injectable } from '@angular/core';
@Injectable()
export class JerrySandBoxService{
name = 'Jerry';
print(){
const myObservable = of(1, 2, 3);
// 創建一個觀察者對象-Observer(處理next、error、complete回調)
const myObserver = {
next: x => console.log('Observer got a next value: ' + x),
error: err => console.error('Observer got an error: ' + err),
complete: () => console.log('Observer got a complete notification'),
};
// 通過Observable的subscribe函數,觀察者去訂閱可觀察者的消息
myObservable.subscribe(myObserver);
}
}




調用Observable構造器,傳入的數組被subscribeToArray再包裝一層:



Observable的構造函數,接受的參數是另一個函數:


最後of返回的是一個observable對象。