我有两个可观察的数组:第一个数组对象可观察
array1= Observable.of({
data: [
{
name: 'test',
lastname: 'last'
},
{
name: 'test1',
lastname: 'last1'
}
]
}).map(res => {
return res.data;
});
// Second Observable:
array2 = Observable.of('test1');
上述两个数组的预期结果是,无论firstname与array2值匹配,从该对象获取lastname。
//Expected Result:
object3=Observable.of('last')
答案 0 :(得分:0)
看起来你正在使用RxJS 5.4,所以你可以这样做,例如:
Observable.combineLatest(array1, array2)
.map(([users, name]) => {
const user = users.find(u => u.name === name);
return user ? user.lastname : null;
})
.subscribe(console.log);
查看现场演示:https://stackblitz.com/edit/rxjs5-4nyq3s?file=index.ts