如何使用 StreamBuilder 将数据从 firebase firestore 检索到颤振中,并使用 ListView.builder 显示值?
Posted
技术标签:
【中文标题】如何使用 StreamBuilder 将数据从 firebase firestore 检索到颤振中,并使用 ListView.builder 显示值?【英文标题】:How to retrieve data from firebase firestore into flutter using StreamBuilder and also used ListView.builder to show the values? 【发布时间】:2021-06-05 14:09:49 【问题描述】:如果我降级版本它可以工作,但我在使用以下版本时遇到问题。
cloud_firestore:^1.0.0
firebase_core: ^1,0.0
和flutter sdk版本:2.0.1
我正在尝试 imaplement 代码。
streamSnapshot.data.length
不起作用
body: StreamBuilder(
stream: FirebaseFirestore.instance
.collection('chats/UMrLSClddfvaw9wV0hs6/messages')
.snapshots(),
builder: (BuildContext context, AsyncSnapshot<dynamic> streamSnapshot) =>
streamSnapshot.connectionState == ConnectionState.none
? Center(
child: CircularProgressIndicator(),
)
: ListView.builder(
itemCount: streamSnapshot.data,
itemBuilder: (context, index) => Container(
padding: EdgeInsets.all(8),
child: Text('This works'),
),
),
),
【问题讨论】:
你遇到了什么问题? itemCount 需要长度。但是我如何获得长度? 【参考方案1】:改变这个:
builder: (BuildContext context, AsyncSnapshot<dynamic> streamSnapshot) =>
进入这个:
builder: (BuildContext context, AsyncSnapshot<QuerySnapshot> streamSnapshot) =>
然后在itemCount
你可以这样做:
itemCount: streamSnapshot.data.docs.length
【讨论】:
以上是关于如何使用 StreamBuilder 将数据从 firebase firestore 检索到颤振中,并使用 ListView.builder 显示值?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 StreamBuilder 将数据从 firebase firestore 检索到颤振中,并使用 ListView.builder 显示值?
我可以使用 streamBuilder 从 Api 获取实时数据吗
Flutter 在使用 StreamBuilder 从 firebase 加载数据之前显示红色错误屏幕,如何解决?
如何在 Flutter Web 上使用 StreamBuilder 和 Firestore?
Flutter - 使用 StreamBuilder 从 firebase 获取数据后,如何使用 ScrollController 跳转到列表视图的底部?