【发布时间】:2018-01-26 02:05:39
【问题描述】:
我在使用 RxJS 形式的 forkJoin 运算符时遇到 TypeScript 类型检查失败。 这是有问题的代码:
let products = this.http.get(productUrl, { headers: this.headers })
.map(response => response.json().data as Product[]);
let loans = Observable.of(loan);
return Observable.forkJoin([products, loans])
.map(data => {
let resultProducts = data[0] as Product[];
if (resultProducts.length > 0) {
lead.Product = resultProducts.find(i => i.ID == productId);
}
lead.Loan = data[1];
return lead;
});
tsc 发出的错误是:
Type 'Loan' cannot be converted to type 'Product[]'.
我对forkJoin的理解是data[0]应该是Product[],data[1]应该是Loan,但是tsc似乎不同意。我的理解不正确吗?我是否错过了一些可以告诉 tsc hat 我想要的类型?
【问题讨论】:
-
lead.Loan = data[1];返回线索; .map 和 Observable 已经用完了,但我可能会被误导
标签: angular typescript observable rxjs5 fork-join