Flutter Firestore NoSuchMethodError:方法'get'在null上调用

问题描述 投票:0回答:1

我有一个firestore数据库。我想知道的是如何检查此数据库中是否存在某个Document引用。我曾经使用过的代码,但现在已经坏了。

获得参考

travelTotalReference =
        Firestore.instance.document('$_id/$_presentDate BalanceTotal');

检查数据是否存在

 travelTotalReference.get().then((dataSnapshot) {
        if (dataSnapshot.exists) {
          setState(() {
            travel = dataSnapshot.data['total'];
          });
        }else{
          setState(() {
            travel = 0;
          });
        }
      });

顺便说一下,我知道这个参考文献不存在。我只是想确保如果可以,我可以更新旅行变量。

我得到的错误

E/flutter (17184): [ERROR:flutter/shell/common/shell.cc(181)] Dart Error: 
Unhandled exception:
E/flutter (17184): NoSuchMethodError: The method 'get' was called on null.
E/flutter (17184): Receiver: null
E/flutter (17184): Tried calling: get()
E/flutter (17184): #0      Object.noSuchMethod 
(dart:core/runtime/libobject_patch.dart:48:5)
firebase dart flutter google-cloud-firestore
1个回答
0
投票

如果你调用一个不存在的对象,你怎么能指望你的travelTotalReference不是null。

从那以后调用get()返回错误,似乎公平......

© www.soinside.com 2019 - 2024. All rights reserved.