我面临一个非常奇怪的问题。
我想实现从DataTable中删除行的选项,因此实现了以下方法:

onRemoveRow() {
    setState(
      () {
        lastRowIndex -= selectedGeneLists.length;
        geneLists.removeWhere((element) => selectedGeneLists.contains(element));
        for (int i = 0; i < geneLists.length; i++) {
          GenesListObjIndexed genesListObjIndexed = geneLists[i];
          genesListObjIndexed.index = i;
        }
        selectedGeneLists = [];
      },
    );
  }
此函数应该修改存储表数据的列表,并且期望当我从列表中删除项目时,项目将从表中删除。
但是您可以在这里看到以下问题(所选的行未被删除):
flutter - 波动-实际值和显示值之间的差异-LMLPHP
奇怪的是,当我调试并检查列表的值时,它看起来不错并且符合预期,那么可能是什么问题呢?

最佳答案

使用key属性可以唯一地标识每一行,并删除具有key值的行。

10-08 01:39