我正在構建打字稿角度2應用程序並使用rxjs。我在這裏繼例如:Angular 2 rxjs switchmap returns Observable <Object>
https://angular.io/docs/ts/latest/tutorial/toh-pt6.html#!#stq=formgroup&stp=1
全部雖然我試圖以打字稿強類型我返回簽名。這可能是我的問題,因爲你不應該這樣做。但似乎你應該能夠。
假設我有鍵入的服務返回一個Observable>。
public search(term: string) : Observable<Array<MyModel>> { // http call }
在我的組件中,我試圖聽這個可觀察的流並返回結果。
private search = new Subject<Search>();
results: Observable<Array<MyModel>>;
ngOnInit() {
this.results = this.search
.debounceTime(400)
.distinctUntilChanged()
.switchMap(search => {
return service.search(search.term); // returns Observable<Array<MyModel>>
});
}
這並不與消息Cannot convert type Observable<Object> to type Observable<MyModel[]>>
我不明白爲什麼switchmap正在恢復,而不是我喜歡的類型可觀察到的編譯。在給出結果之前,我是否需要重新映射它?這是與switchmap的返回簽名的打字稿類型問題?
我認爲你需要的只是一個演員。 – Andrew
我曾嘗試過,但無意中鑄造了返回語句,而不是在屬於演員的switchmap鏈的末尾。這是一個頭腦不清的問題。謝謝! – twifosp