firebase_database - flutter 迁移后出错 - DataSnapshot 语法
firebase_database - error after flutter migration - DataSnapshot syntax
我在迁移之前使用了这段代码
void initState() {
DatabaseReference db;
db = FirebaseDatabase.instance.ref().child("likes");
db.once().then((DataSnapshot snapshot) {
Map<dynamic, dynamic> values = snapshot.value;
values.forEach((key, values) {
likeList.add(values["check"]);
print(likeList);
});
});
}
在“dart pub upgrade --null-safety”之后我收到错误:
The argument type 'Null Function(DataSnapshot)' can't be assigned to the parameter type 'FutureOr<dynamic> Function(DatabaseEvent)
我无法在 pub.dev 在这种情况下如何使用 DataSnapshot 的 changelos 中找到任何内容。
而不是 DataSnapshot
,您应该将 DatabaseEvent
放在 then
中
void initState() {
DatabaseReference db;
db = FirebaseDatabase.instance.ref().child("likes");
db.once().then((DatabaseEvent databaseEvent) {
Map<dynamic, dynamic> values = databaseEvent.snapshot.value;
values.forEach((key, values) {
likeList.add(values["check"]);
print(likeList);
});
});
}
我在迁移之前使用了这段代码
void initState() {
DatabaseReference db;
db = FirebaseDatabase.instance.ref().child("likes");
db.once().then((DataSnapshot snapshot) {
Map<dynamic, dynamic> values = snapshot.value;
values.forEach((key, values) {
likeList.add(values["check"]);
print(likeList);
});
});
}
在“dart pub upgrade --null-safety”之后我收到错误:
The argument type 'Null Function(DataSnapshot)' can't be assigned to the parameter type 'FutureOr<dynamic> Function(DatabaseEvent)
我无法在 pub.dev 在这种情况下如何使用 DataSnapshot 的 changelos 中找到任何内容。
而不是 DataSnapshot
,您应该将 DatabaseEvent
放在 then
void initState() {
DatabaseReference db;
db = FirebaseDatabase.instance.ref().child("likes");
db.once().then((DatabaseEvent databaseEvent) {
Map<dynamic, dynamic> values = databaseEvent.snapshot.value;
values.forEach((key, values) {
likeList.add(values["check"]);
print(likeList);
});
});
}