如何更新firestore中的数组[重复]

Posted

技术标签:

【中文标题】如何更新firestore中的数组[重复]【英文标题】:How to update an array in firestore [duplicate] 【发布时间】:2019-02-01 23:21:17 【问题描述】:

我有这个数组,里面有一个对象,我想更新said,以便里面有一些文本。

代码:

ratePost (postId, postLikes) 
  let docId = `$this.currentUser.uid`

  fb.usersCollection.doc(docId).update(
    gotRates: [
       said: postLikes 
    ]
  )
  .then(() => 
    console.log('work')
  )

但这只会覆盖整个数组。

【问题讨论】:

Doug Stevenson 我已经这样做了,但对我没有帮助 【参考方案1】:

您需要使用设置而不是更新,合并为真,以确保您不会覆盖整个数组,请在此处查看设置文档https://firebase.google.com/docs/firestore/manage-data/add-data

ratePost (postId, postLikes) 
  let docId = `$this.currentUser.uid/gotRates/0`

  fb.usersCollection.doc(docId).update(
    said: postLikes
  )
  .then(() => 
    console.log('work')
  )

【讨论】:

它不起作用 再次覆盖 编辑后检查?问题是它确实会擦除整个数组,而您应该指定要为其重写属性的索引 这与 gotRates[0] 不起作用 试试我刚刚编辑的那个?

以上是关于如何更新firestore中的数组[重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 Firestore 函数更新地图中的数组?

如何使用flutter从firestore中删除/更新数组对象中的指定索引

如何使用 Android 更新 Firestore 中的数组元素?

如何更新firestore中数组内的对象? [复制]

更新firestore数据后显示重复事件,但firestore中的数据本身不重复

Vue Firestore 查询。 Firestore更新数据时如何避免重复?