Пропустить поля при выполнении запроса Firebase - PullRequest
0 голосов
/ 21 апреля 2019

Можно ли пропустить определенные поля при выполнении запроса Firebase?

Следующий запрос:

 getReferredUsers(referralId) {
    this.logger.debug(`Getting referred users by referral id ${referralId}`);
    if (referralId) {
      return this.afs.collection('users', ref => ref.where('referredBy', '==', referralId).limit(3)).valueChanges();
    }
  }

Возвращает следующее:

  {
    "displayName": null,
    "email": "theshizy@hotmail.co.uk",
    "emailVerified": true,
    "firstName": "James",
    "lastName": "Burton",
    "photoURL": "https://i.imgur.com/LHhAQBH.jpg",
    "referralId": "6O5qGmRQ",
    "referredBy": "cpRcYiov",
    "selectedCurrency": "GBP",
    "selectedTimezone": "(UTC) Edinburgh, London",
    "uid": "LjZ8TAb4ZGhgw2DGubbVosw8dkd2"
  }
]

Могу ли я сократить его, чтобы он возвращал только следующее:

  {
    "emailVerified": true,
    "firstName": "James",
    "lastName": "Burton",
    "photoURL": "https://i.imgur.com/LHhAQBH.jpg",
    "referralId": "6O5qGmRQ",
  }
]

1 Ответ

0 голосов
/ 22 апреля 2019

Клиентские SDK Firestore всегда возвращают полные документы.Невозможно запросить только часть документа с помощью клиентского SDK, хотя эта опция существует в серверных SDK-методах select .

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

Также см .:

...