如何使用 BLOC 为对象列表创建流和接收器
Posted
技术标签:
【中文标题】如何使用 BLOC 为对象列表创建流和接收器【英文标题】:How to create a stream and sink for List of objects using BLOC 【发布时间】:2021-04-20 19:31:59 【问题描述】:我有一个对象列表:
[name: "Rob", age: 20, name: "Bob", age: 30,]
如何为此创建流和接收器?
我到处搜索,但找不到任何解决方案。
我知道 String 或 double 或任何其他数据类型,如下所示:
final _name = BehaviorSubject<String>();
Stream<String> get name => _name.stream;
Function(String) get changeName => _name.sink.add;
提前致谢!!!
【问题讨论】:
【参考方案1】:按照您的示例代码,您可以为地图列表创建一个流和接收器,如下所示:
final _personList = BehaviorSubject<List<Map<String, dynamic>>>();
Stream<List<Map<String, dynamic>>> get name => _name.stream;
Function(List<Map<String, dynamic>>) get changeName => _name.sink.add;
【讨论】:
但是如何明智地添加姓名和年龄索引? 您可以在将项目添加到接收器之前对列表进行排序。以上是关于如何使用 BLOC 为对象列表创建流和接收器的主要内容,如果未能解决你的问题,请参考以下文章