Запрос Firebase не вернет все документы - PullRequest
0 голосов
/ 04 марта 2020

Я пытаюсь вернуть все идентификаторы документов в указанной c коллекции. Я пишу это в Javascript для веб-приложения. Я сделал эту функцию и вызываю ее там, где это необходимо.

function getUserList() {
    var rootRef = firebase.database().ref();
        var db = firebase.firestore();
        //var docRef = db.collection("Users");//.doc(getUserID()).collection("userControl").doc("UserStatus") //EXAMPLE: /Users/UUID/userControl/UserStatus

        db.collection('Users')
        .get().then(function(querySnapshot) {
            size = querySnapshot.size // will return the collection size
            console.log(size);
            querySnapshot.forEach(function(doc) {
               console.log(doc.id);

            });
        });
}

Однако, когда я проверяю данные в журнале консоли, я вижу только 6 из 8 документов. Всего документов 8, но в подсчете и журнале do c .id показано только 6. На скриншоте видно (один идентификатор пропущен).

enter image description here

Если я укажу один из отсутствующих документов .get.collection('Users').doc('UUID HERE')..., он прочтет этот документ без проблем.

Большинство этих документов загружены из приложения IOS, за исключением моего (размытого) шаблона UID. Если я вручную отредактирую документ, ie добавлю дополнительное поле и т. Д. c, документ появится в поиске, но для документов прямо из приложения IOS они не появятся, если не указано иное.

Я не уверен, как go исправить это или почему эта проблема возникает.

1 Ответ

0 голосов
/ 04 марта 2020

Документы, которые вы видите курсивом («AB47 ...» и «DCB C ...»), на самом деле не являются документами, представленными в коллекции. Курсив означает, что есть подколлекции с другими документами, организованными под этим идентификатором документа. Ни один запрос никогда не будет соответствовать этим документам, так как они не существуют. Возможно, вы удалили их, не удаляя все документы во всех их подколлекциях. Но они остаются видимыми в консоли, потому что вы можете перейти к их подколлекциям.

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