【发布时间】:2021-04-07 05:08:24
【问题描述】:
我正在从保存在列表中的 firebase 获取我的文档。目前我在列表中有这个内容:
[{date: 02/02/2019, name: John}, {date: 03/03/2020, name: Louise}]
然后,在以下方法中,我将此列表转换为具有我想要的格式的地图。
Map formatMap(list){
if(list.length > 1){
for(int i = 0; i < list.length; i ++){
dateFormatted = _formatDate(list[i]['date']);
print(dateFormatted);
if(i == 0){
myMap[dateFormatted] = [];
}
myMap[dateFormatted].add({'date': list[i]['date'], 'name': events[i]['name']});
}
}else{
dateFormatted = _formatDate(list['date']);
myMap[dateFormatted] = [{'date': list['date'], 'name': list['name']}];
}
return myMap;
}
我这样做是因为我的预期结果是:
{2020-12-31 12:00:00.000Z: [{date: 02/02/2019, name: John}, {date: 03/03/2020, name: Louise}]}
但运行该方法返回的是:
[ERROR:flutter/lib/ui/ui_dart_state.cc(177)] 未处理的异常:NoSuchMethodError:方法 '[]=' 在 null 上调用。 E/颤振(17862):接收器:空 E/flutter (17862):尝试调用:[]=('DateTime' 的实例,'_GrowableList' 的实例(length:0))
我做错了什么?我如何才能达到预期的效果?
【问题讨论】:
标签: list firebase flutter dart