首页 > 解决方案 > 如何访问以下 Firebase 响应

问题描述

这是我得到的 firbase 响应。我的问题是如何获得账单?它是一个对象列表。

{
    "MYxaNHnKxPfdPlmwVGj": {
        "bills": [
            {"name": "Leo", "price": 23423},
            {"name": "dds", "price": 3423},
            {"name": "sdasd12312", "price": 12321}
        ]
    },
    "MYxia564oxQm-iYUMkO": {
        "bills": [
            {"name": "Leo", "price": 200}
        ]
    }
}

标签: databasefirebaseflutterdart

解决方案


您可以在地图上执行 foreach,您将能够获取地图的键和值。

void main() {
  var usrMap = {
    "MYxaNHnKxPfdPlmwVGj": {
      "bills": [
        {"name": "Leo", "price": 23423},
        {"name": "dds", "price": 3423},
        {"name": "sdasd12312", "price": 12321}
      ]
    },
    "MYxia564oxQm-iYUMkO": {
      "bills": [
        {"name": "Leo", "price": 200}
      ]
    }
  };
  usrMap.forEach((k, v) {
    print('Key: $k');
    for(var bill in v['bills'] as List){
      print('Name: ${bill['name']}');
      print('Price: ${bill['price']}');
    }
  });
}

推荐阅读