首页 > 解决方案 > 无法在 Flutter 中修改列表项/元素

问题描述

我有一个初始化如下的列表:这是在 main 之外(所以它是全局的,因为许多其他类需要访问它)。

List mainMenuList = [];

然后用购物项目填充它。

所以

mainMenuList.elementAt[counter].shoppingPrice; 

或者

print(mainMenuList.elementAt[counter].shoppingPrice);

给出“4.00”;

但是如果我想增加或改变那个元素的值,我会得到一个错误:

flutter: Unsupported operation: read-only

因此,例如,我正在尝试为其添加补充:

mainMenuList[listItemIndicator]['ItemPrice'] += supplementsList[supplementCounter]['SupplementPrice']);

我收到以下错误:

颤振:不支持的操作:只读

所以即使我忘记了补充剂..如果我做了类似的事情:

mainMenuList[listItemIndicator]['ItemPrice'] = 1.00; 

我犯了同样的错误

非常感谢!

标签: flutterdart

解决方案


您正在尝试在此处使用键值泛型,List或者上面的代码显示

mainMenuList[listItemIndicator]['ItemPrice'] = 1.00;   //incorrect way of using List

您需要使用其中一个HashMapLinkedMap为此。


推荐阅读