gpt4 book ai didi

angular - 带数组的 RxJS 运算符

转载 作者:行者123 更新时间:2023-12-04 10:28:54 26 4
gpt4 key购买 nike

当我从 HTTP 调用接收数组时,我认为我对 RxJS 如何处理数组有误解。

例如我有:

  public getNews(): Observable<News[]> {
return this.http.get<News[]>("/news");
}

然后我想在上面使用一个简单的 map :

this.newsService.getNews().pipe(map(news => {
return {
// DO SOMETHING HERE WITH NEWS
};
}));

问题是我的参数类型,Typescript 告诉我它是一个新闻数组,但它在 map 中,所以通常它必须是新闻类型,对吗?

我不知道我是否清楚,但如果有人能向我解释那就太好了:)

See screenshot here

最佳答案

您好,要将数组转换为项目列表,您可以使用 flatMap 运算符;您可以处理 subscribe 中的每个项目或使用 map

进行转换
this.service.getNews().pipe(
flatMap(x => x)
).subscribe(x => {
// do something for each item
});

this.service.getNews().pipe(
flatMap(x => x),
map(x => {
// transform each item
})
);

第二个仍然是一个 Observable

关于angular - 带数组的 RxJS 运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60503046/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com