我正在嘗試模擬一些將以角度形式顯示的資料。
我有一個回傳 myObject[] 型別的 Observable 的服務,我試圖通過硬編碼這種型別的陣列并使用from來創建 observable 來模擬資料。例如。
private getMockMyObjects(): MyObject[] {
const myObjects: MyObject[] = [{
name: 'AB',
code: '123'
},{
name: 'CD',
code: '456'
}];
return myObjects;
}
public getMyObjects(): Observable<MyObject[]> {
const result = this.getMockMyObjects()
return from(result);
}
但是我得到了錯誤Type 'Observable<MyObject>' is not assignable to type 'Observable<MyObject[]>',為什么要from(result)創建一個Observable<MyObject>而不是Observable<MyObject[]>?
uj5u.com熱心網友回復:
from接受一個可迭代物件并將其轉換為可觀察物件,這將按順序發出包含在此可迭代物件中的所有物件(請參閱https://rxjs.dev/api/index/function/from)。如果你想創建一個會發出一個陣列的 observable,你應該使用of運算子來代替(參見https://rxjs.dev/api/index/function/of)。這只會發出您傳遞給它的單個值,然后完成 observable。
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/510214.html
標籤:有角度的打字稿rxjsrxjs-observables
