gpt4 book ai didi

flutter - 带有 Flutter 和 Firestore 的 GridView

转载 作者:IT王子 更新时间:2023-10-29 07:12:33 26 4
gpt4 key购买 nike

我正在尝试从云 firestore 记录制作一个简单的 GridView。我已经关注了很多视频教程,但没有成功。这是代码:

import 'package:flutter/material.dart';
import 'package:cloud_firestore/cloud_firestore.dart';

class EventList extends StatefulWidget {
@override
EventListState createState() => new EventListState();
}

class EventListState extends State<EventList> {
@override
Widget build(BuildContext context) {
return StreamBuilder(
stream: Firestore.instance.collection('events_flutter').snapshots(),
builder: (BuildContext context, DocumentSnapshot snapshot) {
if (!snapshot.hasData) {
return Center(child: const Text('Loading events...'));
}
return GridView.builder(
gridDelegate:
SliverGridDelegateWithFixedCrossAxisCount(crossAxisCount: 2),
itemBuilder: (BuildContext context, int index) {
return Text(snapshot['event_name']);
},
itemCount: snapshot.data.documents.length,
);
},
);}}

这是将鼠标悬停在“builder: (BuildContext context, DocumentSnapshot snapshot)”上时的错误消息。谁能帮助我了解发生了什么?

非常感谢。

最佳答案

您应该将 snapshot 的类型从 DocumentSnapshot 替换为 AsyncSnapshot

...

builder: (BuildContext context, AsyncSnapshot snapshot) {
if (!snapshot.hasData) {
return Center(child: const Text('Loading events...'));
}

...

此外,您可能想要替换这一行:

return Text(snapshot['event_name']);

为此:

return Text(snapshot.data.documents[index]['event_name']);

关于flutter - 带有 Flutter 和 Firestore 的 GridView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54582633/

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