【发布时间】:2019-12-15 11:31:53
【问题描述】:
我有一个带有 LinkedHashMap 成员的 StatefulWidget 小部件,如下所示:
LinkedHashMap _items = new LinkedHashMap<String, List<dynamic>>();
现在我需要过滤 Map 的 List<dynamic> 项目中的项目。
我用这段代码过滤:
function filter(_items) {
return _items.map((day, items) {
return new MapEntry(day, items.where((i) {
return i.stringProperty.contains(widget.filter);
}).toList());
});
}
但我得到了主题的错误
type '(dynamic) => dynamic' 不是 'test' 的类型 '(dynamic) => bool' 的子类型
【问题讨论】:
-
Dart 版本 2.7.2 的类似问题,三元运算符技巧解决了它。我什至没有使用像
contains这样的函数,而是直接布尔测试 (a>0)。也许某处有一些错误或回归。顺便说一句,test是根据language reference 传递给where的回调。
标签: flutter dart widget statefulwidget