gpt4 book ai didi

flutter - 等到 firestore 中的数据成功更新

转载 作者:行者123 更新时间:2023-12-04 14:50:20 26 4
gpt4 key购买 nike

我想检查当用户单击保存按钮时数据是否已成功上传到 firestore如果文档未更新,则显示 toast 或要求用户重试。

这是我更新文档的代码。

  Future updateTechnical(Technical technical) async {
return await technicalsCollection.doc(technical.id).update({
"name": technical.name,
"address": technical.address,
"phoneNum": technical.phoneNum,
"tools": technical.tools,
});
}

这是保存按钮

       ElevatedButton(
onPressed: () {
DatabaseService().updateTechnical(
Technical(
id: selectedTechnical.id,
name: nameController.text,
address: addressController.text,
phoneNum: phoneController.text,
tools: selected.join(','),

),
);
},
child: Row(
mainAxisAlignment: MainAxisAlignment.center,
children: [
Text('Save '),
Icon(Icons.person_add),
],
),
),

最佳答案

要检查您的数据是否已成功更新,您需要捕获任何发生的错误。我已在此处修改了您的 updateTechnical() 函数:

  Future updateTechnical(Technical technical) async {
return await technicalsCollection.doc(technical.id).update({
"name": technical.name,
"address": technical.address,
"phoneNum": technical.phoneNum,
"tools": technical.tools,
}).then((value) => print("Updated successfully")) // success toast here
.catchError((error) => print("Failed to update: $error")); // fail toast here
}

您也可以使用 try/catch block ,但被认为效率较低,通常应尽可能避免使用

关于flutter - 等到 firestore 中的数据成功更新,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69176464/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com