当我使用 map 函数时,type '(dynamic) => dynamic' 不是 'test' 类型 '(dynamic) => bool' 的子类型

Gia*_*o M 3 widget dart flutter statefulwidget

我有一个带有 LinkedHashMap 成员的 StatefulWidget 小部件,如下所示:

LinkedHashMap _items = new LinkedHashMap<String, List<dynamic>>();
Run Code Online (Sandbox Code Playgroud)

现在我需要过滤List<dynamic>Map 项目中的项目。

我使用此代码进行过滤:

function filter(_items) {
    return _items.map((day, items) {
        return new MapEntry(day, items.where((i) {
          return i.stringProperty.contains(widget.filter);
        }).toList());
    });
}
Run Code Online (Sandbox Code Playgroud)

但我得到了这个主题的错误

类型 '(dynamic) => dynamic' 不是 'test' 类型 '(dynamic) => bool' 的子类型

Gia*_*o M 5

我用这个代码解决了:

function filter(_items) {
    return _items.map((day, items) {
        return new MapEntry(day, items.where((i) {
          return i.stringProperty.contains(widget.filter) ? true : false;
        }).toList());
    });
}
Run Code Online (Sandbox Code Playgroud)

contains函数似乎没有返回 bool 值。