【问题标题】:Flutter Firebase document field null check inside ListView在 ListView 中 Flutter Firebase 文档字段空检查
【发布时间】:2021-10-26 21:12:05
【问题描述】:

我有一个带有 ListView.builder 的 FutureBuilder。只有当文档中的字段存在时,我才想在其中显示一个带有文本的容器。我从文档和多个堆栈答案中尝试了以下方法,但没有成功。

snapshot.data.docs[index].data()["Field"]!=null 
  ?
  Container(
     child: Text("Null check works");
  )
:Container()
snapshot.data.docs[index].data().containsKey("Field") ?
 Container(
   child: Text("Null check works");
 ) 
:Container()

如果我尝试单独检查函数内的字段并打印文本以确认该字段是否为空,它可以工作,但是当我尝试像上面那样对字段进行空检查时,它不起作用。有人遇到过这个问题吗?

【问题讨论】:

  • 你到底是什么意思 - 它不起作用?有什么错误吗?当您返回 Container() 时,您不会在 UI 中看到任何内容,因为您没有为该容器指定任何宽度或高度。
  • 嗨,Hitesh Patil。控制台中没有错误。即使我检查它是否为 != null 或者我使用 containsKey,该语句始终为假,因此它显示 Container()。 (错误响应的容器是否没有子级无关紧要,这只是一个示例)

标签: firebase flutter google-cloud-firestore null-check


【解决方案1】:

解决了

多次重新启动 android studio 后,我得到了相同的行为。只有在我重新启动 PC 后,它才可以正常工作,而无需对上面的代码进行任何更改。在我只从语句中收到错误消息之前(包含密钥和!= null)。我怀疑这可能是一个颤振版本的问题。

【讨论】:

    猜你喜欢
    • 2021-07-10
    • 2021-07-20
    • 2021-06-15
    • 2020-09-20
    • 2021-07-04
    • 2020-12-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多