我正在尝试向我的 list
这是我所做的
productTemp.sort((a, b) => b.productPrice.compareTo(a.productPrice));
productTemp = productTemp.where((x) =>
x.productName.toLowerCase().contains(inputText.toLowerCase()));
productTemp = productTemp.toSet().toList();
Run Code Online (Sandbox Code Playgroud)
在这里我是如何设置的
List<ProductsModel> productTemp = [];
Run Code Online (Sandbox Code Playgroud)
那么这个
class ProductsModel {
final String productId;
final String productName;
final String isNew;
final String isHot;
final String productImage;
final String categoryId;
final String productPrice;
final String productDescription;
ProductsModel(
{this.productId,
this.productName,
this.isNew,
this.isHot,
this.productImage,
this.categoryId,
this.productPrice,
this.productDescription});
factory ProductsModel.fromJson(Map<String, dynamic> json) {
return ProductsModel(
productId: json['productId'] as String,
productName: json['productName'] as String,
isNew: json['isNew'] as String,
isHot: json['isHot'] as String,
productImage: json['productImage'] as String,
categoryId: json['categoryId'] as String,
productPrice: json['productPrice'] as String,
productDescription: json['productDescription'] as String,
);
}
bool operator ==(o) =>
o is ProductsModel && productId == o.productId;
int get hashCode => productId.hashCode;
}
Run Code Online (Sandbox Code Playgroud)
所以我收到这个错误
[ERROR:flutter/lib/ui/ui_dart_state.cc(148)] 未处理的异常:“WhereIterable”类型不是“List”类型的子类型
我该如何解决?提前致谢
Mar*_*yns 14
您productTemp的类型为 ,List但where返回Iterable. 您需要将 的输出where转换为List.
productTemp.where(
(x) => x.productName.toLowerCase().contains(inputText.toLowerCase())
).toList();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
14076 次 |
| 最近记录: |