【发布时间】:2020-10-18 21:21:25
【问题描述】:
我正在使用 Firebase 作为“后端”构建一个带有 Flutter 的应用程序。我必须显示相当长且复杂的列表来构建列表,并且想知道是否有比我目前的方法更基于性能的方法:
这就是我现在所做的:
Widget build(BuildContext context) {
return StreamBuilder(
stream: Firestore.instance.collection("collection" ).limit(200).snapshots(),
builder: (context, snapshot) {
if (!snapshot.hasData) {
return Center(
child: CircularProgressIndicator());
} else {
return _buildComplexeList(snapshot);
}
},
);
这会导致以下问题:每次更新列表中的内容时,都会在列表中重建所有小部件。另外,我想使用一个 AnimatedList 并且很难找出是否添加了一个项目,如果是,那么它是在哪里添加的。
我想知道你是否可以使用
.snapshots().listen((event) { }
它返回一个 StreamSubscription 而不是一个流,但老实说我不知道如何。这可能有助于仅构建已更改的小部件。
很高兴知道你们中的一些人是否有其他更好的解决方案。提前致谢!
保罗
【问题讨论】:
标签: firebase flutter dart google-cloud-firestore