Firebase获取所有文档无法正常工作
我正处于我的飞行生涯的开始。现在,我面临一个问题。我想这是因为我真的不知道颤振代码的调用顺序 问题是,当我启动应用程序时,(通过保存所有文件),我会看到第一个屏幕截图,但在应用程序运行时,在不更改任何代码的情况下,我在dart文件上输入CTRL+S,最后我会看到第二个屏幕。为什么我不能直接进入第二个屏幕 *该结构基本上是获取集合中的所有文档,并在网格视图中列出它们Firebase获取所有文档无法正常工作,firebase,flutter,Firebase,Flutter,我正处于我的飞行生涯的开始。现在,我面临一个问题。我想这是因为我真的不知道颤振代码的调用顺序 问题是,当我启动应用程序时,(通过保存所有文件),我会看到第一个屏幕截图,但在应用程序运行时,在不更改任何代码的情况下,我在dart文件上输入CTRL+S,最后我会看到第二个屏幕。为什么我不能直接进入第二个屏幕 *该结构基本上是获取集合中的所有文档,并在网格视图中列出它们 final CollectionReference sebzeCollection = Firestore.instance
final CollectionReference sebzeCollection =
Firestore.instance.collection('sebzeler');
class RightBody extends StatefulWidget {
@override
_RightBodyState createState() => _RightBodyState();
}
class _RightBodyState extends State<RightBody>
with AutomaticKeepAliveClientMixin {
@override
void initState() {
getAllSebze();
super.initState();
}
List<SebzeMeyve> sebzeler;
getAllSebze() async {
sebzeler = new List<SebzeMeyve>();
sebzeCollection.getDocuments().then((QuerySnapshot snapshot) {
snapshot.documents.forEach((DocumentSnapshot doc) {
SebzeMeyve sebze = new SebzeMeyve(
isInSale: doc.data['isInSale'],
organic: doc.data['organik'],
dogal: doc.data['dogal'],
fiyat: doc.data['fiyat'],
mensei: doc.data['mensei'],
name: doc.data['name'],
picture: doc.data['picture'],
stok: doc.data['stok']);
sebzeler.add(sebze);
});
});
}
List<Widget> _setBuildCards() {
List _listings = new List<Widget>();
for (int i = 0; i < sebzeler.length; i++) {
_listings.add(_buildCard(
'T-shirt',
sebzeler[i].name.toUpperCase(),
'\₺' + sebzeler[i].fiyat,
sebzeler[i].picture,
false,
false,
context));
}
return _listings;
}
@override
Widget build(BuildContext context) {
// List<SebzeMeyve> _sebzeler = widget.test;
//super.build(context);
return Padding(
padding: const EdgeInsets.only(top: 10.0),
child: Container(
padding: EdgeInsets.only(left: 15, right: 15.0),
width: MediaQuery.of(context).size.width - 30,
height: MediaQuery.of(context).size.height - 50,
child: GridView.count(
crossAxisCount: 3,
children: _setBuildCards(),
),
));
}
final collection参考sebzeCollection=
Firestore.instance.collection('sebzeler');
类RightBody扩展了StatefulWidget{
@凌驾
_RightBodyState createState()=>_RightBodyState();
}
类_RightBodyState扩展了状态
使用AutomaticEpaLiveClientMixin{
@凌驾
void initState(){
getAllSebze();
super.initState();
}
罗列塞布泽勒;
getAllSebze()异步{
sebzeler=新列表();
sebzeCollection.getDocuments().then((QuerySnapshot快照){
snapshot.documents.forEach((DocumentSnapshot doc){
SebzeMeyve sebze=新的SebzeMeyve(
isInSale:doc.data['isInSale'],
有机:文件数据['organik'],
dogal:doc.data['dogal'],
fiyat:doc.data['fiyat'],
mensei:doc.data['mensei'],
名称:文件数据['name'],
图片:文档数据['picture'],
stok:doc.data['stok']);
添加(sebze);
});
});
}
清单(卡){
列表_listings=新列表();
for(int i=0;i
谢谢大家!