Firebase Firestore:如何在双击按钮时删除字段值

Firebase Firestore:如何在双击按钮时删除字段值,firebase,flutter,google-cloud-firestore,Firebase,Flutter,Google Cloud Firestore,我有一个按钮,onPressed保存一个字段值,但我想将其设置为,如果再次按下该按钮,取消选择该项目,则按钮旁边显示的文本将消失,该特定字段值将从文档中删除。我怎样才能做到这一点呢?这是我所能理解的。请跟进 import 'package:cloud_firestore/cloud_firestore.dart'; import 'package:flutter/material.dart'; class TestPage extends StatefulWidget { @overrid

我有一个按钮,onPressed保存一个字段值,但我想将其设置为,如果再次按下该按钮,取消选择该项目,则按钮旁边显示的文本将消失,该特定字段值将从文档中删除。我怎样才能做到这一点呢?

这是我所能理解的。请跟进

import 'package:cloud_firestore/cloud_firestore.dart';
import 'package:flutter/material.dart';

class TestPage extends StatefulWidget {
  @override
  State<StatefulWidget> createState() {
    return TestPageState();
  }
}

class TestPageState extends State<TestPage> {
  bool selected = false;
  @override
  Widget build(BuildContext context) {
    return SafeArea(
      child: Scaffold(
        body: Row(
          children: <Widget>[
            RaisedButton(
              onPressed: () async {
                if (selected) {
                  await Firestore.instance
                      .collection('Test')
                      .document('test')
                      .updateData({'test': ''});

                } else {

                  await Firestore.instance
                      .collection('Test')
                      .document('test')
                      .updateData({'test': '<value-to-be-deleted>'});
                }
                setState(() {
                  selected = !selected;
                });
              },
            ),
            (selected ? Padding(
              padding: const EdgeInsets.all(8.0),
              child: Text('Text that will disappear'),
            ): Container())
          ],
        ),
      ),
    );
  }
}