【发布时间】:2021-06-29 16:58:01
【问题描述】:
我们的应用从 Firebase 接收嵌套的 JSON 数据。我们将这些数据存储在 Object Item & Object Order 列表中。
Object Order可以有多个属性,int price;项目清单;项目描述。子列表项可以有多个 itemName 字符串。
当我们试图访问 rasterMap 中的 itemName 时,它只是访问列表中的最后一项。我们如何在 rasterMap 中访问多个 itemName 的所有值?
我们的数据结构是:
{
"Orders": {
"-MPuETb4vq2NdtQl-_y1": {
"name": "Pulled Pork Sandwich",
"price": 14.00
},
"-fbdhfunshy-_y2": {
"name": "BBQ Spare Ribs",
"price": 14.00
}
}
}
----Begin code---
//List to create orderItem with object item
List<Item> orderItems = [];
//List to create orderList with object item
List<Order> orderList = [];
//Retrieve JSON
//Firebase connection here
if (!_checkIfObjectExist(orderDate)) {
Item itemObj = Item.fromJson(event.documents[i].data);
orderItems.add(itemObj);
Order orderObj = Order.fromJson(event.documents[i].data);
}
//iterate through order list
for (int i = 0; i < orderList.length; i++ ) {
print(orderList);
for(int j = 0; j < orderList[i].item.length; j++) {
itemName = orderList[i].item[j].itemName;
print(itemName);
}
}
Map<String, dynamic> rasterMap = {
'appendBitmapText':
"LIST ITEM NAMES IN THIS STRING MAP HERE"
};
【问题讨论】:
-
你能发布一个示例 JSON 数据吗(请不要简短)?
-
首先,你的数据有一些错误;第二,您可以在上面的消息中正确发布它吗?如果是完整的数据或链接更好
-
@Ουιλιαμ Αρκευα 谢谢 - 我编辑了上面的评论。有什么想法吗?
-
兄弟,在处理任何数据时,您首先需要验证其完整性和正确性。有任何错误,特别是
[0]或[1]。您可以使用此online validator 查看这些错误。我有使用 Json 数据的经验,但没有太多使用 Firebase 的经验。 -
校验JSON数据后,如何将数据迭代并添加为rasterMap中的字符串列表?