以下是我要做的:
-
有一个数组k,存储在以下文档的"posts"索引下:
k=['a','b',c'] firebase.firestore().collection('posts').doc(uid)
-
将以下数组合并到现有数组:
k=['c','d'] result=['a','b','c','d','e']
在Firestore中有内置语法可以做到这一点吗?我尝试了arrayUnion((方法,如下所示,但它似乎可以插入单个元素,而不是实际的数组:
firebase.firestore().collection('posts').doc(uid).update({
posts: firebase.firestore.FieldValue.arrayUnion(k)
})
你知道怎么做吗?提前感谢!
您可以尝试一些类似的
firebase.firestore().collection('posts').doc(uid).set({k: this.k}, {merge: true})
使用merge设置:true,如果文档或文档中的字段存在,则更新,如果不创建
Firebase Firestore中有一个突破性的更改,您必须使用新的方式来设置合并键。我在飞镖中这样做如下,你可以尝试这种方式,希望它能为你工作
FirebaseFirestore.instance
.collection('ABC')
.doc({uid})
.set(data, SetOptions(merge: true));