flutter - 错误:'Iterable 类型的值' 不能从返回类型为 'List 的函数返回?'。显示此错误
问题描述
List<Transaction>? get _recentTransactions {
return _userTransactions.where((tx) {
assert(tx != null);
return tx.date.isAfter(DateTime.now().subtract(Duration(days: 7),),);
});
}
当我这样做时,它显示此错误任何人都可以解释
解决方案
where
Dart 中的函数返回 anIterable<T>
而不是List<T>
.
但是由于您的函数的返回类型为List<Transaction>
,因此您必须转换Iterable<Transaction>
从where
函数中获得的返回类型。
为此,请toList
使用Iterable
.
List<Transaction>? get _recentTransactions {
return _userTransactions.where((tx) {
assert(tx != null);
return tx.date.isAfter(DateTime.now().subtract(Duration(days: 7),),);
}).toList();
}
推荐阅读
- ethereum - 是否可以获得从另一个合同外部函数获取数据的外部函数的返回值?
- python-3.x - 如何使用 Matplotlib 创建高分辨率动画而不会出现内存问题?
- jenkins - Jenkins Pipeline - 从奴隶开始
- java - Java:类中的错误
- python - 检查HTML标签是否平衡python的程序
- regex - C++11 正则表达式匹配 $VARNAME 或 ${VARNAME}
- javascript - 为什么表达式逻辑表达式`product.id === +id;`中的加号?
- tensorflow - 如何在异步 Actor Critic 方法中实现 TensorFlow 模型并行性?
- algorithm - 收集物品集的优化算法
- reactjs - 尝试打印具有数组的对象时出错