【问题标题】:How can I change an array based on user in firebase?如何根据 firebase 中的用户更改数组?
【发布时间】:2018-12-31 21:18:00
【问题描述】:

我正在构建一个使用 Reactjs 和 Firebase 的应用程序,它处理用户并且每个用户都可以添加、删除、更新,当然还可以显示他最喜欢的列表。每个用户的结构可能类似于{uid: '123', favList: ['1', '2']}。如何更新数组favList,如果uid已经存在则不添加新记录?

这是我的添加代码:

const db = fire.firestore();
db.settings({
   timestampsInSnapshots: true
});
db.collection('users').add({
  favorites: this.state.favs,
  uid: fire.auth().currentUser.uid
});

【问题讨论】:

    标签: javascript reactjs firebase google-cloud-firestore


    【解决方案1】:

    您尝试执行的操作称为 Firebase 中的数组联合操作。

    如果您有文档的引用,您想将 UID 添加到 favorites 字段:

    documentRef.update({
        favorites: firebase.firestore.FieldValue.arrayUnion(uid)
    });
    

    有关更多信息,请参阅documentation on updating elements in an array

    【讨论】:

      猜你喜欢
      • 2017-12-17
      • 2011-06-02
      • 1970-01-01
      • 2021-01-12
      • 1970-01-01
      • 2020-02-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多