首页 > 解决方案 > 动态从 Firestore 中删除数据

问题描述

我正在用 React & Redux & Firestore 构建一个项目,我知道如何删除/更新/添加等。但是当我有 2 个带有动态字段的子集合时,我找不到任何解决方案来删除它。

如果你看图片,我有表ID和用户ID,但是字段是0、1、2等等。

如何从 tableGuests 中删除字段?也许结构不好,可能会更好?

guest > user id > userTables > table id > tableGuests 这是一个数组。 在此处输入图像描述

标签: reactjsreduxgoogle-cloud-firestore

解决方案


如何从 tableGuests 中删除字段?

文档中没有明确的方法来解释如何从数组中弹出一个项目。我会这样做:

  1. 获取您的表数据const data = firestore().collection('userTables').doc(ID).get();
  2. 使用该数据获取数组的当前状态const array = data.get('tableGuests');
  3. 使用不包含您要删除的项目的新数组更新文档(在本例中为最后一个)firestore().collection('userTables').doc(ID).update({ tableGuests: array.slice(0, array.length - 1) });

推荐阅读