【发布时间】:2021-11-09 04:45:01
【问题描述】:
我使用 GetX 作为状态管理,我在这样的控制器中声明了一个列表..
List<Chair> selectedSeats = <Chair>[].obs;
我有两种方法可以在列表中添加和删除项目。
这是我用来添加椅子的
void addSelectedChair(Chair chair) {
if (selectedSeats.contains(chair.chairName)) {
return;
} else {
selectedSeats.add(chair);
}
update();
print(chair.chairName);
}
我用它来从列表中删除椅子..
final controller = Get.put(SeatController());
// this is how i call this method
//controller.removeSelectedChair(this.widget.customList[index].chairName);
//like controller.removeSelectedChair("C2");
void removeSelectedChair(String chair) {
selectedSeats.removeWhere(((item)=>item.chairName == chair));
print(chair);
update();
}
但我无法让删除工作... 为什么不从 selectedSeats 列表中删除椅子..
这里是椅子模型,如果有用的话..
enum ReserveState { available, reserved, selected }
class Chair {
ReserveState reserveState;
int rowNum;
int cNum;
String chairName = '';
Chair(this.rowNum, this.cNum,this.reserveState,this.chairName);
}
【问题讨论】:
标签: flutter dart state-management flutter-getx