我正在使用RXFire和RXJS。
collectionData(firebase.firestore.collection('collectionname')).subscribe(x=>console.log(x)
返回
// [{document1}, {document2}]
我想要的是一个返回的可观察对象
// {document1}
// {document2}
我尝试使用from()和toArray()的组合(即,将可观察对象转换为一个普通数组,然后再返回到一个可观察对象,该对象可逐一发出),但是toArray()仅创建一个可观察对象,该可观察对象发出一个数组,而不是实际的数组。我需要一个操作就是toArray()的对立面。取一个发出数组的可观察对象,然后将其转换为分别发出每个值的一个可观察对象。
我该怎么做?
编辑:
我也尝试做类似的事情
const newObs = oldObs.subscribe(x => from(x))
但是存储订户,而不是新的可观察者。 =(
答案 0 :(得分:0)
有多种方法可以做到这一点。例如:
collectionData(firebase.firestore.collection('collectionname'))
.pipe(
concatAll(),
)
.subscribe();
您也可以使用concatMap(array => array)
。
您也可以使用concat*
代替merge*
。