Mysterious_android
Mysterious_android

Reputation: 618

How to update an "array of objects" with Firestore and Firebase functions?

I have some body data coming into firebase functions as a array ['123','hello','34']

I then process it by doing const data = JSON.stringify(['123','hello','34'])

After i update the firestore data by doing a set

set({testData : firestore.FieldValue.arrayUnion(data)})

Problem is, the entire thing is saved as string in firestore

testData: "['123','hello','34']"

Instead of an array.

testData: 
 0: "123"
 1: "hello"
 2: "34"

My question is how do i get firestore to save it as an array?

Upvotes: 0

Views: 241

Answers (1)

Dharmaraj
Dharmaraj

Reputation: 50830

You are converting it to a string by using stringify(). Try refactoring the code as shown below:

docRef.set({ testData : firestore.FieldValue.arrayUnion(...data) })
// use spread operator here                             ^^^

The documentation (NodeJS) has an example on adding multiple values using arrayUnion.

Upvotes: 1

Related Questions