TypeScript中如何将Observable<Person[]>映射为Observable<Cars[]>
将Observable<Person[]> 映射为Observable<Car[]>
你可以使用RxJS的map操作符,结合JavaScript数组的map方法完成这个转换:
import { map } from 'rxjs/operators'; // 假设你的可观察对象名为persons$ const cars$: Observable<Car[]> = persons$.pipe( map(persons => persons.map(person => ({ refId: person.id, lable: person.name })) ) );
转换逻辑说明:
- RxJS的
map操作符负责接收persons$发出的Person[]数组 - 数组的
map方法遍历每个Person实例,将字段对应转换为Car结构:Person.id对应赋值给Car.refIdPerson.name对应赋值给Car.lable
如果原persons$发出空数组,转换后的cars$也会发出空数组,无需额外处理边界情况。
内容的提问来源于stack exchange,提问作者Catalina
相关产品推荐
相关产品推荐

