我试图在可观察数组中获取属性的不同值。
let pt$ = Observable.of([{planTypeID : 1, description : 'test 1'},
{planTypeID : 2, description : 'test 2'}]);
let planTypeIDs$ = pt$
.flatMap(a => a)
.map(a => a.planTypeID).distinct().toArray();
这是在rxjs中执行此操作的正确方法,还是有更好的方法?
答案 0 :(得分:0)
.from
代替.of
,这样可以免除.flatMap
distinct
默认会检查引用,所以如果要比较内容,你应该创建某种哈希或制作自定义比较器 - 但这可能不是必需的。let pt$ = Observable.from([{planTypeID : 1, description : 'test 1'},
{planTypeID : 2, description : 'test 2'}]);
let planTypeIDs$ = pt$
.map(a => a.planTypeID)
.distinct()
.toArray();