Слушайте изменения в коллекции - PullRequest
0 голосов
/ 03 февраля 2020

enter image description here

Интересно, можно ли подписать всю коллекцию документа таким образом, чтобы, если какой-либо дочерний узел (даже глубоко вложенный, как completness.energy значения внутри 2020.2.1) внутри balanceRecords получает изменение триггера слушателя

Я пробовал:

FirebaseDb.collection(`users`).doc(uid).collection(`balanceRecords`)
  .onSnapshot({ includeMetadataChanges: true }, function (snapshot) {
    debugger
    // during initialisation snapshot:
    // docs.length = 0 
    // empty: true
})

Последующие обновления коллекции не вызывают какого-либо слушателя, пожалуйста, если есть допустим подход к прослушиванию полей документов в подколлекции?

1 Ответ

1 голос
/ 03 февраля 2020

На предоставленном вами скриншоте показан один документ без вложенных коллекций. В документе есть единственное видимое поле с названием «balanceRecords», которое содержит сложный объект. Поскольку это не подколлекция, вы можете , а не ссылаться на нее, используя код, который вы написали.

Если вы хотите прочитать это поле, вы должны прочитать указанный документ. Если вы хотите прослушать изменения в этом поле, вам придется настроить прослушиватель снимка для этого отдельного документа. Слушатель снимка не скажет вам точно, что изменилось в этом поле - вам придется сравнить его с предыдущим снимком, чтобы выяснить это.

FirebaseDb.collection('users').doc(uid).onSnapshot(snapshot -> {
    // read the balanceRecords field out of the document here.
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...