arrays - 如何在 Flutter 的 Firestore 中向数组中添加相等的元素?
问题描述
我刚刚在 Flutter 中发现了这一点
List<int> values = [1,2,3,1,2,3];
Firestore.instance.path.updateData({"values": FieldValue.arrayUnion(values)});
生成 Firestore 数组
(Firestore Array) [1,2,3]
显然,这些值以某种方式映射,删除了重复值,尽管我可以在 Firebase 面板中在线手动添加重复值(数据类型分别称为数组)。
有没有办法绕过这种行为或者这是一个错误?
解决方案
根据此处的文档,数组联合只会添加不存在的元素。因为您使用的 Firestore 函数旨在仅添加新的唯一值,所以它会以这种方式运行而不会被绕过。不过,您当然可以绕过此功能,但必须先调用文档、检索数组并在将其更新到 Firestore 之前附加它。
推荐阅读
- git - 为什么无法在 github 上推送 git local repo?
- html - 更改选择离子角度的输入控制
- javascript - 如何修复,无法对未安装的组件执行 React 状态更新?
- javascript - 如何获取数据集标签图表JS
- node.js - 使用电子应用程序捕获特定的应用程序窗口
- reactjs - 是的,移动浏览器中的验证失败 React js
- python - torch.utils.save_image 是 PyTorch 1.7.1 和 1.9.1 的区别
- operator-keyword - <> 运算符在 Chisel 中的方向?
- three.js - RGBELoader 纹理质量低 - 256 x 256
- arrays - 在 PyCuda 的 SourceModule 中创建数组