更新 Firestore 中数组的映射数据 - Flutter

2023-12-12

我一直在尝试创建一个由 Google 的 Firebase 提供支持的演示“Schedule-App”,但我在更新特定值时遇到了一些困难具有映射值的数组在 Firestore 的一侧。

如下图所示,我们想要实现什么 is onButtonPress,这个具体值需要更新。

enter image description here

我创建了一个数据流并通过管理它StreamProvider.

StreamProvider<DocumentSnapshot>.value(
        value: FirebaseFirestore.instance.collection('schedule').doc(FirebaseAuth.instance.currentUser.uid).snapshots(),

我使用以下方法来更新数组的数据,但它不起作用。

  Future<void> updateUserData(int index, String title, String text, int hour, bool check) async {
    DocumentReference snapshots = FirebaseFirestore.instance.collection('schedule').doc(FirebaseAuth.instance.currentUser.uid);
    snapshots.update({
      ['standard_schedule'][index]: {'title': title, 'text': text, 'hour': hour, 'check': check}
    });
  }

我应该对上面的方法进行哪些更改,以便每次按下按钮时更新 bool 值?

=================================================

解决方案(2020 年 10 月 24 日): 火库不提供更新索引处的数组元素的方法。您必须读取整个文档,修改内存中的数组,然后写入整个数组返回到文档。


火库不提供更新索引处的数组元素的方法。您必须读取整个文档,修改内存中的数组,然后写入整个数组返回到文档.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

更新 Firestore 中数组的映射数据 - Flutter 的相关文章

随机推荐

  • JavaScript - 获取图像特定区域的平均颜色

    我需要使用以下命令从图像的矩形区域获取平均颜色JavaScript 我尝试使用tracking js但它不允许指定区域而不是单个像素 如果您需要获取单个像素的平均颜色 而不是矩形区域的颜色 请看一下另一个问题 鼠标悬停时从画布获取像素颜色
  • 为什么 Content-Disposition 标头在 IE 8 中不起作用?

    我正在尝试将文本文件 CSV 流式传输到响应 并且以下代码在 Firefox 3 中完美运行 但是当我使用 IE 时 它看起来想要下载实际的 aspx 页面 并抱怨该文件内容与文件扩展名或类型不匹配 如果我随后选择下载该文件 它会正确下载
  • 无法在“C”程序中打印欧元符号

    我无法打印欧元符号 我正在使用的程序如下 我已将字符集设置为代码页 1250其中 0x80 代表欧元符号 Program include
  • Android:旋转器上的 getSelectedItem 问题

    我有一个Spinner 并将所选项目放入邮件正文中 这是我的代码 Override protected void onCreate Bundle savedInstanceState super onCreate savedInstance
  • 文本不透明度渐变

    我希望使文本看起来在边缘淡出 这是我到目前为止所拥有的 struct ContentView View var body some View ZStack Color red Text Hello world blendMode lumin
  • Java 球衣 RESTful Web 服务请求

    我一直在关注有关宁静服务的教程 效果很好 不过 有些事情我还不太明白 它看起来是这样的 Path hello public class Hello This method is called if TEXT PLAIN is request
  • ftell/fseek 与 /sys/class 文件中实际可读数据长度不同

    嵌入式Linux系统 ls al sys class xxxx r r r 4096 ftell lstat st size 返回 4096 fread fp 1 4096 buf 返回 3 实际上 使用vi打开文件只有3个字节 有什么问题
  • [NSManagedObjectContext删除:]:无法识别的选择器发送到实例

    核心数据让我心烦意乱 我正在删除旧数据并希望插入从服务器收到的新数据 现在删除部分给出了 sigabort NSManagedObjectContext删除 无法识别的选择器发送到实例0x522f550 2013 09 27 14 05 5
  • 使用Sinon的假定时器时setTimeout未触发

    我有一个类似于下图所示的测试 基本上我想测试特定方法是否被延迟 以下示例按预期工作 即调用解析方法并且测试通过 it should delay execution by 1 second function const clock sandb
  • 类型错误:不可散列的类型

    我正在尝试获取元组列表的列表 类似 1 0 2 0 3 0 1 1 2 1 3 1 我用了这个声明 set a b for a in range 3 for b in range 3 但这给了我一个错误 TypeError unhashab
  • 使用 C#/.Net 时只读如何影响目录?

    我发现我可以写入 例如 将文件复制到 只读目录 也就是说 一个目录 Attributes FileAttributes ReadOnly 我什至可以改变它的名字 我发现唯一不能做的就是删除它 这真的是唯一的事情吗 ReadOnly防止 ED
  • DataGrid 重新定位将新行添加到顶部

    在 DataGridview 中 空白行添加条目很方便 但当列表很大时很快就会丢失 您可以将其默认位置从 DataGrid 视图的底部更改为顶部吗 我很少用过DataGrid并且对其添加行的能力一无所知 但从 WPF MVVM 的角度来看
  • 发现:所需单位:Int - 如何纠正这个问题?

    scala gt class Rectangle Length Int Width Int def getLlength Int println Length def getWidth Int println Width
  • 如何为 ASP.NET MVC 上的 GET 和 POST 操作绑定字典类型参数

    我想定义一个显示标签和复选框列表的视图 用户可以更改复选框 然后发回 我在回传字典时遇到问题 也就是说 post方法的字典参数为null 以下是 GET 和 POST 操作的操作方法 public ActionResult MasterEd
  • MEF WPF - 通过插件取消 Application.Current.Shutdown()

    有什么办法可以取消 Application Current Shutdown 背景 我玩了一下 mef 并将一些插件添加到我的主应用程序中 如果有任何插件调用 Application Current Shutdown 我的主应用程序也关闭了
  • 使用 android TimerTask 和 Timer 防止最终用户操纵计时器

    如何确保一项应在 Android 操作系统上运行 x 时间的任务在该 x 时间段内运行 而无需用户操纵日期和时间 例如 如果我希望这个计时器持续运行 24 小时 然后通知用户 24 小时已经过去 即使手机关闭一小时 用户也会将其重新打开并将
  • MS SQL 时态表更新失败

    我找不到任何东西来解释为什么当调用一个 SP 来根据临时表上是否已存在记录进行插入或更新时 我得到 系统版本表上的数据修改失败 MYDB dbo TemporalExample 因为事务时间早于 受影响记录的周期开始时间 这意味着什么剂量
  • 如何让 Google Apps 脚本服务的剩余每日邮件配额持续工作?

    我做了一个关于谷歌应用程序脚本的项目 用于在发送表单响应后发送自动电子邮件 但是 当我使用以下命令检查剩余电子邮件的每日配额时MailApp getRemainingDailyQuota 方法中 配额响应随每个脚本执行而变化 所以我创建了另
  • 创建通用的 angularjs listController

    Angular ui router 允许我解决可以在控制器中使用的不同注入 我创建了一个简单的通用 ListController 并在 ui router 中注入一个对象 其中包含特定于该特定视图的 CRUD 函数以及模板 举例来说 假设我
  • 更新 Firestore 中数组的映射数据 - Flutter

    我一直在尝试创建一个由 Google 的 Firebase 提供支持的演示 Schedule App 但我在更新特定值时遇到了一些困难具有映射值的数组在 Firestore 的一侧 如下图所示 我们想要实现什么 is onButtonPre