firebase - 使用带有双变量的Flutter和带数字字段类型混淆的Firestore

标签 firebase flutter dart google-cloud-firestore

我是Flutter和Firestore的新手,觉得缺少一些有关如何处理double和Firebase的基本知识。我有Flutter的代码读取和写入字符串和int到Firestore,一切都很好。当我设置Firestore字段时,数字生活变得越来越复杂。如果在flutter中,我将变量定义为num(并且忽略Flutter double数据类型),一切都很好。如果我将Flutter变量定义为double,则没有任何作用,除非确保Firestore number字段的值为10.2(或带小数点的任何值)。值10将使应用程序崩溃!

  • 我是否应该始终在Flutter中使用num而不使用double?有什么影响吗?
  • 从Firestore中读取代码(propertyLandArea:snapshot.data ['propertyLandArea'] ?? 10.5,),我应该进行检查还是以某种方式确保将propertyLandArea分配了一个 double 值。不能使用诸如snapshot.data ['propertyLandArea']。toDouble之类的简单内容。
  • 我应该只使用int并知道所需的小数位数,以便可以正确显示和保存(如果我不忘记在某个地方进行转换)。
  • 最佳答案

    我几次遇到这个问题。接收数据时,我使用castingnumber转换为double;当我保存数据时,我使用double和firebase转换为number

    1)我个人不会使用数字,因为如果您要离开firebase,则必须转换模型。我认为您不会有任何其他影响。

    2)我认为没有必要检查。如果您想确定自己收到的是双重证明,则可以对安全规则进行验证。

    3)不。正如您所说,您很容易忘记将其更改为某个地方,您的问题很容易解决,而且您永远都不知道可以在哪里使用这些额外信息。

    关于firebase - 使用带有双变量的Flutter和带数字字段类型混淆的Firestore,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60795317/

    相关文章:

    ios - 从 Firebase 检索 key 数组, "variable used within its own value"

    android - 使用最新版本的 Firebase list 合并失败

    Flutter pub 由于版本不匹配而失败。 (qr_flutter 和打印)

    json - 是{0:{“id”:1,…},{“id:2,…}} a other reprensation of a JSON list like [{” id“:1,…},{” id:2,…}]

    flutter - Flutter-TextField验证无效

    json - 如何使用动态数组键解析 json?

    android - 不知道 Firebase 过滤器的异常

    java - firebase 分析中的事件 "first_open"如何计数?

    dart - 根据当前查看的页面更改 AppBar 的颜色和文本

    android - setState 不适用于 Flutter 中的 DropDown 按钮