Flutter:如何访问 Map 中的数组数据?

Posted

技术标签:

【中文标题】Flutter:如何访问 Map 中的数组数据?【英文标题】:Flutter: How to access array data inside a Map? 【发布时间】:2021-03-03 18:35:30 【问题描述】:

我正在开发一个 Flutter 应用程序,我得到如下 JSON 数据

chat_mode: supplier, timestamp: 1605852885271, last_message: Test, members: [K9ioYyiEUQVVNjx0owwsABCD, K9ioYyiEUQVVNjx0owwsaXYZ]

我需要访问members 下的每个单独元素,这就是我尝试过的。

Map<dynamic, dynamic> map = snapshot.value;
print(map["members"]);

上面允许我访问整个数组,而不是每条记录。

但我无法使用 map["members"][0] 之类的东西访问单个元素,因为它是一张地图。在这种情况下,我该如何访问这些数据?

【问题讨论】:

【参考方案1】:

您必须将其显式转换为List

试试

List<dynamic> members = List.of(map["members"]);

List<dynamic> members = map["members"];

【讨论】:

以上是关于Flutter:如何访问 Map 中的数组数据?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用flutter从firestore中删除/更新数组对象中的指定索引

在 Flutter 中将 Firestore DocumentSnapshot 转换为 Map

如何在flutter中访问ModelName / ProviderName的数据表单实例

在javascript中使用Object.keys()和map()方法访问对象数组

Flutter基础组件06Image

Flutter基础组件06Image