Как я могу создать группу ионного переупорядочения из коллекции пожарного магазина - PullRequest
1 голос
/ 04 мая 2019

Мне нужно создать группу ионного переупорядочения из коллекции пожарных. точнее, из наблюдаемого объекта, поскольку список, который нужно переупорядочить, может обновляться в режиме реального времени.

Я получил код от @Mirinda Corwin здесь ( Ionic / Firebase - объединение ошибок не является функцией (reorderArray) ).

Это мой код, адаптированный из ответа Миринды:

import { Observable, ObjectUnsubscribedError } from "rxjs";
import { take } from 'rxjs/operators';

...

public membersListRef: AngularFirestoreCollection<any>;
public membersList$: Observable < any []>;
public membersList = {} as any;
public membersArray: any[];

...

this.membersArray = [];
this.membersListRef = this.firestore.collection(`/userProfile/${this.groupNumber}/membersList`);
this.membersList$ = this.membersListRef.valueChanges();

...

this.membersList$.take(1).subscribe((members) => {
  members.forEach(mdoc=>{
    console.log("id: , name:" + mdoc.id, mdoc.name);
       return  this.membersArray.push({id: mdoc.id, name:mdoc.name })
     })
   });

но я получаю следующую ошибку: «take не является свойством наблюдаемого».

1 Ответ

0 голосов
/ 24 мая 2019

В текущей версии RxJS изменен метод применения операторов к потоку, следует использовать метод «pipe»:

this.membersList$.pipe(take(1)).subscribe(...);

https://www.learnrxjs.io/operators/filtering/take.html

...