错误:没有为类查询定义方法“ get”
我对如何使用查询从Firestore中获取数据以及如何在文本中显示数据了解不多,请提供一些建议
getData(String docId)async{
final QuerySnapshot snapshot = await Firestore.instance.collection('listofprods').where('id', isEqualTo: docId).get(); // error in the get
return snapshot;
}
}
在futurebuilder中也出现错误,当我使用getdocument()而不是get()时,方法[]被调用为null
FutureBuilder(
future: fd.getData('ac1'),
builder: (BuildContext context, AsyncSnapshot snapshot) {
return Container(
decoration:
BoxDecoration(border: Border.all(color: Colors.black)),
child: ListTile(
title: Text(snapshot.data['name'].toString()),
trailing: Text(snapshot.data['icon'].toString()),
onTap: (){
Navigator.push(context, MaterialPageRoute(builder: (context) => Ac()));
},
),
);
},
),
要获取单个文档,您不应该查询数据库,而应该获取它;)
在FutureBuilder中,您必须检查数据是否来自数据库。您可以使用snapshot.hasData