firebase-realtime-database - Flutter 下拉菜单详细信息未保存到 Firestore
问题描述
// 我一直在尝试将下拉菜单中的选定用户保存到 Firestore,但它没有保存。这是我的代码的重要部分我认为所有主要代码都已经存在//我实际上最近在firestore实例文档中存储了一些信息,但似乎我不知道如何使用下拉菜单
User selectedUser;
List<User> users = <User>[const User('Normal User'),const User('Senior'),const User('Junior'), const User('Admin')];
}
new DropdownButton<User>(
value: selectedUser,
onChanged: (User newValue) {
setState(() {
selectedUser = newValue;
});
},
items: users.map((User user) {
return new DropdownMenuItem<User>(
value: user,
child: new Text(
user.name,
),
);
}).toList(),
),
Future sendData() async{
Firestore.instance.collection('Profession').document()
.setData({ 'selectedUser': selectedUser,
})
.catchError((error) {
print('error: $error');
return null;
});
解决方案
要获取有关操作状态的更多信息,您应该为返回的promise 对象setData
提供回调方法,如下所示:
Firestore.instance.collection('Profession').document()
.setData({ 'selectedUser': selectedUser,
})
.then(function() { console.log("Success"); })
.catch(function(error) { console.error("Error: ", error)});
推荐阅读
- javascript - 通过 PHP 访问已发布的 Javascript 变量
- xslt - 如何在不删除命名空间声明的情况下删除命名空间名称
- winforms - 如何在 C# 中的 WindowsForm 应用程序中更新 ListBox 中的项目
- python - Python sphinx 如何列出函数的模块名称
- mysql - 是否可以使用用户的名字/姓氏在 MySQL 中创建唯一的用户名?
- excel - Excel中的自定义格式日期
- slider - JSSOR 我的滑块在小分辨率下太小
- javascript - 打开用户选择的文件
- java - 如何检查特定 Firestore 文档中是否存在特定字段?
- gtag.js - 全球网站标签和 Adwords/Analytics