更新后无法写入Firestore(Flutter)

时间:2019-06-05 09:35:04

标签: firebase flutter google-cloud-firestore

我无法写到firestore。我认为这可能与更新pubspec.yaml中的软件包有关,但我不确定。我写给firestore

的方法
void onSendMessage(String content, int type) {
    // type: 0 = text, 1 = image, 2 = sticker
    if (content.trim() != '') {
      textEditingController.clear();

      var documentReference = Firestore.instance
          .collection('messages')
          .document(groupChatId)
          .collection(groupChatId)
          .document(DateTime.now().millisecondsSinceEpoch.toString());
      print(groupChatId);

      Firestore.instance.runTransaction((transaction) async {
        await transaction.set(
          documentReference,
          {
            'idFrom': id,
            'idTo': peerId,
            'timestamp': DateTime.now().millisecondsSinceEpoch.toString(),
            'content': content,
            'type': type
          },
        );
      });
      listScrollController.animateTo(0.0, duration: Duration(milliseconds: 300), curve: Curves.easeOut);

    } else {
      Fluttertoast.showToast(msg: 'Nothing to send');
    }
  } 

我已经检查了runTransaction函数中的所有字段,它们都包含了它们应该包含的值。在我看来,问题在于set方法由于某种原因未将数据写入firestore

onSendMessage在我的代码中被调用

Material(
            child: new Container(
              margin: new EdgeInsets.symmetric(horizontal: 8.0),
              child: new IconButton(
                icon: new Icon(Icons.send),
                onPressed: () => onSendMessage(textEditingController.text, 0),
                color: Theme.of(context).primaryColor,
              ),
            ),
            color: Colors.white,
          ),

基本上我想从文本字段中获取文本并将其发送到firestore

版本0.12.0的firestore有重大更改,但我认为这不会影响我的代码。也没有任何错误日志 我将如何检查我是否有Firestore实例,我认为这可能是问题的根源

0 个答案:

没有答案