当前位置: 首页 > 知识库问答 >
问题:

颤振Firesbase返回空值

谢财
2023-03-14
final db = FirebaseFirestore.instance.collection('dutyStatus');

Future<void> readOnDutyStatus() async {
//The function is being called in the authentication bloc
try {
  List status = [];
  // await db.add({'onDuty': true});
  var data = await db.doc('driver1').get();
  var temp = data.data();
  status.add(temp);
  print(
      '_______________________________________________________________________________________');
  print(status.toString());
  print(
      '_______________________________________________________________________________________');
} catch (e) {
  print(e);
}

注意:同样的代码,当使用在另一个帐户的firebase工作,我似乎不能解决问题。

共有1个答案

富勇军
2023-03-14

很可能driver1不存在。

试试这个

var temp =  data.exists ? data.data() : "Doc does not exist";
  

打印列表应返回[Doc不存在]而不是null。

 类似资料:
  • 我可以使用“startAfter”和“limit”进行分页,但它有错误。 例如,在Firestore DB中,我有7条记录: 当页面大小为5时,第一页就可以了,因为我使用了: 它给了我1-5项。 当它加载第二页时,我使用了: 问题是第二页结果只有item7,item6消失了。“开始”也有同样的问题。 真希望它有“抵消”功能,有人有解决办法吗?

  • Xcode的输出:在文件中包含从 /Users/dani/development/flutter/.pub-cache/hosted/pub.dartlang.org/url_launcher-6.0.3/ios/Classes/FLTURLLauncherPlugin.m: 7: /Users/dani/development/flutter/.pub-cache/hosted/pub.dart

  • 当我试图添加google_sign_in时,flutter_authcloud_firestore它给我带来了一个错误:” [✓] 颤振(通道稳定,v1.5.4-hotfix.2,Linux上,locale en_US.UTF-8)•颤振版本1.5。4-hotfix。2 at/home/ramu/Downloads/tools/颤振•框架版本7a4c33425d(4周前),2019-04-29 1

  • 我想问一下IOS的实施情况 当前场景:基本上,我已经在android平台上开发了该应用程序,现在我想将其转换为IOS平台。由于这是我的第一个应用程序,我真的需要一些有经验的声音来解决我面临的一些问题。 问题: 1-是否有任何简单的方法来检测当前使用的Widget是Android/IOS平台?我们如何才能确定特定的小部件是Android平台的,并且在IOS平台上不工作,反之亦然。 2 -如果我们以某

  • 我试图调用google speech to text api,但它总是返回空结果。我从这个答案中得到了实现提示:在dart、FLATTER中使用gcloud语音api进行实时语音识别 我使用的是颤振声(https://pub.dev/packages/flutter_sound)打包以录制音频,然后将base64编码的音频发送到语音API 录音代码 音频文件android。aac带。从上述代码成功

  • 我使用pushNamed()从屏幕中获取返回数据,如下所示: 但代码有问题,这是完整的错误堆栈跟踪: 但以下代码正常工作: