【发布时间】:2021-07-11 01:25:28
【问题描述】:
我尝试从集合中获取文档并将其映射到模型,到目前为止一切都很好。 问题是当我添加一个包含无效字段的文档时,就会出现错误。
我的主页
class HomePage extends StatelessWidget {
@override
Widget build(BuildContext context) {
final _plantsProvider = Provider.of<PlantsProvider>(context);
List<Plant> plants;
return Scaffold(
body: Container(
child: SafeArea(
child: StreamBuilder(
stream: _plantsProvider.fetchPlantsStream(),
builder: (_, AsyncSnapshot<QuerySnapshot> snapshot) {
if (snapshot.hasData && snapshot.data!.docs.length > 0) {
plants = snapshot.data!.docs.map(
(doc) {
return Plant.fromJSON(doc.data(), doc.id);
},
).toList();
return ListView.builder(
itemCount: plants.length,
itemBuilder: (buildContext, index) =>
ListTile(title: Text(plants[index].name!)),
);
} else
return CircularProgressIndicator();
},
)),
),
);
}
}
正确的文件
错误的文档,仅当我添加包含错误字段的文档时才会发生错误。在这种情况下其他。 有什么办法控制吗?
【问题讨论】:
标签: flutter dart dart-null-safety