gpt4 book ai didi

firebase - Future 无法从 Firebase 获取数据

转载 作者:IT王子 更新时间:2023-10-29 07:04:00 25 4
gpt4 key购买 nike

我正在尝试使用 Flutter 在 Firebase 中获取集合的长度。我有一个个人资料页面,可以从数据库中加载您完成的徒步次数,但我一直收到 Future<int>当我打印变量时。我该如何解决这个问题?

class ProfilePage extends StatefulWidget {
@override
_ProfilePage createState() => new _ProfilePage();
}

int doneHikes;
Database temp = new Database();

class _ProfilePage extends State<ProfilePage> {

@override
void initState() {
super.initState();
_numOfDoneHikes();
}

Future<void> _numOfDoneHikes() async{
var asyncResult = await temp.numOfDoneHikes();
setState(() => doneHikes = asyncResult);
print(doneHikes);

}

numOfDoneHikes数据库对象中的函数:

Future<int> numOfDoneHikes() async {
return Firestore.instance.collection(globalUserName)
.document("Done Hikes").collection("Hike List").snapshots().length;
}

使用此代码,我不断收到 doneHikes打印

instance of Future<int>

最佳答案

你可以使用等待:

Future<int> numOfDoneHikes() async {
return await Firestore.instance.collection(globalUserName)
.document("Done Hikes").collection("Hike List").snapshots().length;
}

事实上,你甚至不需要等待,你可以这样做:

Future<int> numOfDoneHikes() {
return Firestore.instance.collection(globalUserName)
.document("Done Hikes").collection("Hike List").snapshots().length;
}

关于firebase - Future<int> 无法从 Firebase 获取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55250613/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com