firebase数据库最近的更新似乎有一些变化。我的项目在firebase\u数据库:^7.0.0版本下运行良好,但在firebase数据库的更新版本中,我无法更新项目代码。
以下是v7的工作版本
class _MainScreenState extends State<MainScreen> {
//
DatabaseReference driversRef =
FirebaseDatabase(databaseURL: firebaseUrl).reference().child("Drivers");
//
void searchNearestDriver() {
print("xxx searchNearestDriver");
if (availableDrivers.length == 0) {
cancelRideRequest();
clear();
noDriverFound();
return;
}
var driver = availableDrivers[0];
driversRef
.child(driver.key!)
.child('car_details')
.child("type")
.once()
.then((DataSnapshot snap) async { //error from here
if (await snap.value != null) {
String carType = snap.value.toString();
if (carType == carRideType) {
notifyDriver(driver);
//print("NotifyDriver is running");
//TODO This removes the driver from geofire aswell re code
//availableDrivers.removeAt(0);
} else {
Fluttertoast.showToast(msg: carRideType + "Driver not available");
}
}
});
}
firebase\u数据库^9.0.12上的同一代码出现错误。我收到的错误在`(DataSnapShot snap)async{…}上错误是
无法将参数类型“Future Function(DataSnapshot)”分配给参数类型“FutureOr”
once
方法返回数据库事件
,而不是更新版本中的DataSnapshot
,我猜这是更新。
void searchNearestDriver() async {
print("xxx searchNearestDriver");
if (availableDrivers.length == 0) {
cancelRideRequest();
clear();
noDriverFound();
return;
}
var driver = availableDrivers[0];
//driversRef.child(driver.key!).child('car_details').child("type");
// .once();
DatabaseEvent event = await driversRef
.child(driver.key!)
.child('car_details')
.child("type")
.once();
//.then((DataSnapshot snap) async {
if (event.snapshot.value != null) {
String carType = event.snapshot.value.toString();
if (carType == carRideType) {
notifyDriver(driver);
//availableDrivers.removeAt(0);
} else {
Fluttertoast.showToast(msg: carRideType + "Driver not available");
}
}
} //);
我试图显示一个零件的"loc",如果它的零件号我给。以下是数据结构的样子: 活动代码: getLoc是Product类的getter函数,它返回给定curP对应的“loc”。curP部分表示子值。 逻辑对我来说似乎是正确的,但我没有得到输出。我哪里出了问题?
我是Android开发的新手,我正在从firebase Realtime数据库中检索所有的子节点,这些节点的约会状态为“已完成”,并且子节点具有当前用户id,但当我移到历史记录时,它没有显示任何内容。有人能帮我解决这个问题吗。我需要尽快解决问题。 Firebase数据库模型
我试图创建一个简单的程序,从用户的名字,手机号码和电子邮件地址,然后把数据在Firebase实时数据库。 有3个输入框和一个按钮,按一下就可以完成上面的操作。代码如下: 我这样设置了消防基地:
问题内容: 我目前正在学习Firebase和iOS的知识,因此请耐心等待。我当前正在发布到我的表,如下所示: 我正在尝试检索插入新记录时创建的内容,但是无法检索它。我已经尝试过( 但是由于浏览网页而无法找到一个可靠的解决方案,所以这是一个随机的猜测 )。有任何想法吗? 问题答案: 注意 :-Althogh 是自以来的一项强大功能,但是当您想创建具有唯一键的节点时更喜欢将数据存储到其中。我之所以喜欢
我对Firebase和Android是新手。我已经在我的Firebase帐户中存储了用户身份验证详细信息(姓名、个人资料图像而不是电子邮件ID)。我想检索那些数据(如姓名等)到我的应用程序的其他部分。如何检索实时数据库子值?