Как добавить объекты в массив в FireStore? - PullRequest
0 голосов
/ 27 апреля 2020

У меня есть код ниже, который при первом запуске создает новую коллекцию с идентификатором документа, равным моему UID. Этот недавно созданный документ имеет массив с именем 'array', который содержит объект cocktailInformation. Пока что все отлично работает.

const saveData = (uid) => {
        db
            .collection('users')
            .doc(uid)
            .set({
                array: [ cocktailInformation ]
            })
            .then(function() {
                console.log('Document successfully written!');
            })
            .catch(function(error) {
                console.error('Error writing document: ', error);
            });
    };

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

var washingtonRef = db.collection("cities").doc("DC");

// Atomically add a new region to the "regions" array field.
washingtonRef.update({
    regions: firebase.firestore.FieldValue.arrayUnion("greater_virginia")
});

// Atomically remove a region from the "regions" array field.
washingtonRef.update({
    regions: firebase.firestore.FieldValue.arrayRemove("east_coast")
});

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

1 Ответ

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

Вы можете обновить документ, выполнив следующие действия:

db.collection('users').doc(uid).update({
    array: firebase.firestore.FieldValue.arrayUnion("value")
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...