我使用angular/fire valueChanges()获取文档
const countries: Observable<any> = this.AngularFireStorage
.doc('country/country')
.valueChanges()如果添加管道(点击(x => console.log(X)。它将记录
{ jp: {id: jp}, us: {id: us}}我想要的是添加管道(点击(x => console.log(x))并获取
{id: jp}
{id: us}如何转换国家/地区:可观察到国家/地区: Observable
发布于 2021-03-30 02:51:51
代替pipe(tap(x => console.log(x))
写入:
pipe(tap(x =>
const result = [];
Object.keys(x).forEach(key => result.push(x[key]));
console.log(result);
))发布于 2021-03-30 05:02:09
您可以使用Object.values将对象的值转换为数组。您可以使用三个常见的高阶运算符(switchMap、mergeMap、concatMap)中的任何一个将该数组转换为值流。
这看起来可能是这样的:
const countries: Observable<any> = this.AngularFireStorage
.doc('country/country').valueChanges().pipe(
concatMap(Object.values),
tap(console.log)
)https://stackoverflow.com/questions/66859818
复制相似问题