flutter 如何更新dart中用作Map值的列表

imzjd6km  于 2022-12-14  发布在  Flutter
关注(0)|答案(1)|浏览(123)

我一直在尝试更新一个Map〈String,List〉sender,就像我想更新一个普通的Map一样,但是我没有任何运气。我看了这个question,但是尝试添加一个[0]来标记索引不起作用。我一直收到一个脚本错误,所以当列表甚至没有显示在我的UI中时,我无法跟踪原因。我希望sender是{“Header”:[内容]}然后再次调用to_repo {“标题”:[内容,内容]}

void to_repo(content) {
    if (!sender.containsKey('Header')) {
  sender['Header'][0] = content;
}
  else if (sender.containsKey('Header')) {  sender.update(
       "Header",
         (value) => value.add(content.toString()),
       
      // ifAbsent: () => content.toString(),
       );
                                          }
s5a0g9ez

s5a0g9ez1#

代替

sender['Header'][0] = content;

您可以

sender['Header'] = [content];

编辑:
我相信您也可以将函数重写为:

void to_repo(content) {
  sender['Header'] = (sender['Header'] ?? [])..add(content);
}

相关问题