【发布时间】:2019-05-31 18:07:54
【问题描述】:
这是我的功能
Future<Address> readAddress() async {
database = FirebaseDatabase(app: app);
await database
.reference()
.child(table_name)
.child(uid)
.once()
.then((DataSnapshot snapshot) {
print("address_start");
if (snapshot.value == null) {
print("address_start_value_null");
return null;
} else {
print("address_start_value_not_null");
print(snapshot.value);
Address a = Address().map(snapshot.value);
return a;
// return a;
}
}).catchError((onError) {
print(onError);
return onError;
});
}
这是我的函数调用
readAddress().then((address) {
if (address != null) {
print("address read seucssfully " + address.firstname);
} else {
print(
"address read faield result is null $address"); // + address.toString());
}
}).catchError((onError) {
print("error on read address");
});
但这里总是返回 null。
这里有什么问题?
来自 readAddress() 函数的消息
[dart] 这个函数的返回类型是'Future',但是 不以 return 语句结束。 [missing_return]
我不知道如何解释更多 StackOverflow 在尝试发布此问题时显示此错误消息“t 看起来您的帖子主要是代码;请添加更多详细信息。
"
【问题讨论】:
-
print("address_start_value_null")被调用了吗? -
不,不叫
-
它包含我检查的值
-
address_start_value_not_null 被调用
标签: firebase firebase-realtime-database dart async-await flutter