【发布时间】:2020-12-30 21:01:39
【问题描述】:
我希望有人可以在这里帮助我,我已经被这个问题困了几个小时了。
我正在尝试根据我自己的模型从 Firestore 快照构建 StreamProivder。不知何故,每次我声明 StreamProvider <List<Planner>> 的类型时,value: 行都会带有红色下划线。
这是流提供者
return StreamProvider<List<Planner>>.value(
value: DatabaseService(uid: user.uid).planner,
child: Scaffold(...
这是我的 DataService 类中的流:
Stream<List<Planner>> get planner {
return userCollection.document(uid).collection('Planner').snapshots().map(_plannerFromSnapshot);
}
我在这里创建自己的数据列表:
List<Planner> _plannerFromSnapshot(QuerySnapshot snapshot) {
return snapshot.documents.map((doc) {
return Planner(
tag: doc.data['Datum'] ?? '',
tageszeit: doc.data['Tageszeit'] ?? '',
gericht: doc.data['Gericht'] ?? '',
plannerID: doc.documentID ?? '',
);
}).toList();
}
}
这是我自己的 Planner 模型类:
class Planner {
final String tag;
final String tageszeit;
final String gericht;
final String plannerID;
Planner({this.tageszeit, this.gericht, this.tag, this.plannerID});
}
这是来自 AndroidStudio 的错误提示:
参数类型 'Stream
(其中 Planner 在 ...\lib\models\plannermodel.dart) 不能分配给参数 类型 'Stream
(其中 Planner 定义在 ...\lib\screens\planner.dart)。
我该如何解决这个问题?
提前谢谢你!
【问题讨论】: