Запрос коллекции FireStore для ключа документа - PullRequest
0 голосов
/ 16 марта 2019

Я установил ключ документов в коллекции для userId, и теперь я хотел бы получить этот один документ в снимке для результатов в реальном времени:

Ref = firestore().collection('Ref');
Ref.where("[.key]","==",this.id).onSnapshot(snap => {
      if (!snap.empty) {
        snap.docChanges().forEach(change => {
          if (change.type === "modified") {
            // update model here for charts
            this.user = change.doc.data()
          }
          if (change.type === "added") {
            // create a new chart
            this.user = change.doc.data()

          }

        })
      }
    })

Я пытался key .key [.key] ничего не работает. Я хотел бы посмотреть этот документ на предмет изменений, пока его пользователь вошел в систему.

1 Ответ

1 голос
/ 16 марта 2019

Если вы хотите получить элемент, основанный на его идентификаторе, нет необходимости использовать запрос, просто получите только ссылку на этот идентификатор документа.Поэтому, пожалуйста, измените следующую строку кода:

 Ref.where("[.key]","==",this.id).onSnapshot(/* ... */)

на

 Ref.doc(key).onSnapshot(/* ... */)

Редактировать:

var doc = db.collection('Ref').doc(key);
var observer = doc.onSnapshot(docSnapshot => {
  console.log(`Received doc snapshot: ${docSnapshot}`);
  // Get data from the docSnapshot object
}, err => {
  console.log(`Encountered error: ${err}`);
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...