@inflexible

Как правильно обновить данные в firebase firestore?

У меня есть коллекция, есть документ, в документе есть поле notes - массив обьектов! Хочу к этому массиву добавлять новый обьект!

Я сделал вот так, и это работает(но мне не нравиться):
// firebase.db = app.firestore()
firebase.db.collection('users')
        .doc(firebase.auth.currentUser.uid)
        .get()
        .then( data => data.data())
        .then( data => data.notes)
        .then( oldNotes => {
            firebase.db.collection('users')
                .doc(firebase.auth.currentUser.uid)
                .update({
                    notes: [...oldNotes, newNote]
            })
        })


А хотелось бы как-то вот так:
firebase.db.collection('users')
        .doc(firebase.auth.currentUser.uid)
        .update({
            notes: [...notes, newNote]   //                                                   (1 способ)
            // notes: firebase.db.FieldValue.arrayUnion(newNote)              (2 способ)
        })


Но первый способ не работает, так как я не понял как получить доступ и развернуть notes (в этом случае он undefined)!
А второй способ нашел в инете, но что-то он не работает, пишет FieldValue indefined!

Подскажите пожалуйста кто в теме? Заранее благодарен :)
  • Вопрос задан
  • 470 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы