在构建 StreamBuilder<QuerySnapshot> 时引发了以下 NoSuchMethodError
Posted
技术标签:
【中文标题】在构建 StreamBuilder<QuerySnapshot> 时引发了以下 NoSuchMethodError【英文标题】:The following NoSuchMethodError was thrown building StreamBuilder<QuerySnapshot> 【发布时间】:2021-02-16 09:24:45 【问题描述】:我尝试在我的应用程序中实现 Streambuilder,但在尝试我的代码时出现错误。这是我得到的错误:
在构建 StreamBuilder(dirty, state: _StreamBuilderBaseState
#be008) 时引发了以下 NoSuchMethodError: 在 null 上调用了 getter 'documents'。 收件人:空 尝试调用:文档
这是我尝试过的代码:
@override
Widget build(BuildContext context)
return Scaffold(
appBar: AppBar(
title: Text('Test'),
),
body: StreamBuilder(
stream: Firestore.instance
.collection('test')
.document('OrRPMJJyPCThMYMi0mUl')
.collection('test')
.snapshots(),
builder: (context, snapshot)
return ListView.builder(
itemCount: snapshot.data.documents.length,
itemBuilder: (context, index)
DocumentSnapshot reservation = snapshot.data.documents[index];
return ListTile(
title: Text(test['name']),
);
,
);
,
),
);
【问题讨论】:
【参考方案1】:报错说明snapshot返回null,请确认查询是否正确,很有可能是你的这部分查询不正确document('OrRPMJJyPCThMYMi0mUl')。
【讨论】:
【参考方案2】:尝试documents
而不是document
。
【讨论】:
以上是关于在构建 StreamBuilder<QuerySnapshot> 时引发了以下 NoSuchMethodError的主要内容,如果未能解决你的问题,请参考以下文章
在构建期间调用 setState() 或 markNeedsBuild(),使用 FutureBuilder 中的 Provider 和 Flutter 中的 StreamBuilder
Flutter:从 StreamBuilder 构建器回调内部导航到另一个屏幕