在 setState() 方法中向 List 添加元素,而不是保存元素 Flutter

Posted

技术标签:

【中文标题】在 setState() 方法中向 List 添加元素,而不是保存元素 Flutter【英文标题】:Adding elements to the List inside setState() method, not saving element Flutter 【发布时间】:2022-01-17 17:44:58 【问题描述】:

我正在将另一个列表项添加到新列表并在 setState() 中执行此代码。但是每当我调用这个初始化新列表的类时,列表的前一个条目就会消失..不知道为什么会这样。我也是新手。提前致谢。

List<String> myList = [];

内部构建(有状态小部件),

onTap: ()
setState(()
myList.add("newstring");
);

【问题讨论】:

也帮助解决这个问题:***.com/questions/70344260/… flutterbyexample.com/lesson/adding-elements-add-and-insert-all 【参考方案1】:

-> 你执行这种类型的 Exaple 飞镖垫 例如:

 void main() 
      List<String>   OneData  = ['one','two','three'];  
      List<String>  TwoData = []; 
      TwoData.add('one'); 
      print(TwoData);
    

【讨论】:

您的答案不包含任何解决方案【参考方案2】:

你应该在 setState 中复制对象,在你的情况下应该是

onTap: () 
    setState(()
        myList = [...state.myList, "newstring"];
    );

【讨论】:

请解释...state.myList,因为它给出了错误。谢谢 称为展开算子,会复制列表对象 详情在这里:dart.dev/guides/language/language-tour#spread-operator

以上是关于在 setState() 方法中向 List 添加元素,而不是保存元素 Flutter的主要内容,如果未能解决你的问题,请参考以下文章

在Java中向对象添加多个元素

这是在一行代码中向 numpy 数组添加额外维度的最佳方法吗?

在后面的代码中向 Asp ListBox List Items 添加属性时出现问题

如何在 Play Framework 2.3 中向 FakeRequest 添加查询字符串参数?

有没有办法在 C# 中向数组中添加一些元素?

在Java中向MySQL添加数据,statement