问题描述
在我的Flutter应用程序中,我有一个数据库,用于跟踪用户喜欢和不喜欢的项目。我有功能
List finalFavoritesList;
void queryDb() async {
final db = await database;
final allRows = await db.query(TABLE_FAVORITE);
List finalFavoritesList = allRows.toList(growable: true);
print(finalFavoritesList);
}
据我所知,它会从sqflite数据库创建一个飞镖列表。 Logcat打印:
[{id: 0,isFavorite: 0},{id: 1,isFavorite: 1},{id: 2,{id: 3,{id: 4,{id: 5,isFavorite: 1}]
现在我要删除isFavorite等于0但不知道如何的所有条目。此新列表应使用其他名称。
解决方法
我认为您的问题本身就有答案!
使用removeWhere
函数。
List favorite = [{'id': 0,'isFavorite': 0},{'id': 1,'isFavorite': 1},{'id': 2,{'id': 3,{'id': 4,{'id': 5,'isFavorite': 1}];
favorite.removeWhere((item) => item['isFavorite'] == 0);
print(favorite);
输出:
[{id: 1,isFavorite: 1},{id: 3,{id: 5,isFavorite: 1}]
引用:https://api.dart.dev/stable/2.9.3/dart-core/List/removeWhere.html
希望能解决您的情况!