2
我想了解飛鏢中異步和等待的用法。不知怎的,我有問題返回某些方法的值。同步返回值並等待飛鏢
考慮下面
Future<int> getMrn() async {
var mrnRef = await firebaseClient.child('mrn');
DataSnapshot ss;
StreamSubscription<Event> onValueSubscription = await mrnRef.onValue
.listen((event) {
ss = event.snapshot;
return ss.val();
});
//return Future<int> ss.val();
}
mrn
代碼int
類型應當由getMrn
方法要返回的。但每次返回的ss.val()
返回null
。看起來ss = event.snapshot
在上次返回的值中看不到
這樣做的正確方法是什麼? 感謝