Angularfire snapshotChanges () против библиотеки javscript для Firestore onSnapshot () - PullRequest
0 голосов
/ 06 апреля 2020

Я обнаружил, что есть два прослушивателя в реальном времени для firestore.

  • Angularfire: snapshotChanges ()
  • Библиотека javscript Firestore: onSnapshot ()

Вот мой вопрос

  1. Могу я узнать, в чем разница? Как мне правильно их использовать (я разрабатываю с использованием Ioni c + Cordova + Angular framework)?
  2. Как отключить snapshotChanges ()? Обратитесь к документации Firestore, я могу отсоединить onSnapshot (), как показано ниже.
    var unsubscribe = db.collection("cities")
        .onSnapshot(function (){
          // Respond to data
          // ...
        });

    // Later ...

    // Stop listening to changes
    unsubscribe();

Спасибо за ваш любезный обмен.

1 Ответ

1 голос
/ 06 апреля 2020

Библиотека AngularFire не содержит метод с именем onSnapshot(). Метод onSnapshot() используется в библиотеке облачного пожарного хранилища javascript для прослушивания обновлений в реальном времени.

Хотя snapshotChanges() специально для angularfire, он возвращает Observable, поэтому он будет прислушиваться к любым изменениям в базе данных и извлекать данные.

To unsubscribe, вам просто нужно вызвать метод unsubscribe():

//Subscribe
subscription = this.itemRef.snapshotChanges().subscribe();

//Unsubscribe
subscription.unsubscribe()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...