【发布时间】:2019-06-13 19:14:51
【问题描述】:
我正在从流中捕获事件,每个事件都是Device Object。流的工作方式是它在一个计时器上,因此它会多次选择同一个设备并添加到流中。
我把所有的都是 List<Device> 并把它放到另一个流中。
我创建了一个StreamTransformer 以尝试从列表中删除重复项,然后将唯一列表添加回流中。
下面的这个转换代码,我尝试添加到设置并返回到列表,但我认为这没有奏效,因为它们是对象而不是字符串。
//Transform Stream List by removing duplicate objects
final deviceList = StreamTransformer<List<Device>, List<Device>>.fromHandlers(
handleData: (list, sink) {
List<Device> distinctList = list.toSet().toList();
sink.add(distinctList);
});
我曾尝试使用 .where 和其他库,但无济于事,希望得到一些指导。
设备对象包含可用于过滤的唯一 ID 和名称 消除重复
问题:如何从 Dart 中的列表中删除重复的对象?
提前致谢。
【问题讨论】:
-
@Günter Zöchbauer 这个是给你的,伙计:)
标签: list object dart stream flutter