我正在使用Flutter将数据保存到Firestore中,棘手的部分在于我的TextFormField将数据设置为null或"",因为它在表单页面加载时设置了数据,然后我收到了错误消息:Expected a value of type '(() => void)?', but got one of type '+Future'。
以下是我的代码:
final barcode = TextEditingController();
final price = TextEditingController();//these are from my textformfield
final stock = TextEditingController();
final color = TextEditingController();
addData() async {
// ASYNC HERE
Map<String, dynamic> theData = {
"Color": color.text,
"Price": price.text,
"Stock": stock.text,
};
CollectionReference collectionReference = Firestore.instance.collection("products");
await collectionReference.doc(barcode.text).set(theData);
}
我认为答案可能与某个未来函数有关。
下面是我调用addData的地方:
FloatingActionButton.extended(
onPressed: addData(),
label: Text('Done'),
icon: Icon(Icons.add),
backgroundColor: Colors.blue,
),
addData()
的地方。 - Lee3