【问题标题】:JSON Data To Array in FlutterFlutter中的JSON数据到数组
【发布时间】:2020-10-26 11:20:51
【问题描述】:

下面的代码正在解码 Json 数据,控制台输出也显示出来,json 数据也显示出来。 我能够根据控制台输出成功解码数据。 我希望将解码后的 json 数据存储在一个数组中,以便我可以将其作为数组存储在 firestore 文档中。

我该怎么做? 我知道如何将数据存储在 Firestore 数据库中,我只需要将 json 数据存储在一个数组中。 请指导我

代码

 var parsedData = json.decode(state.successResponse);
                List members = parsedData['members'];
                 members.forEach((member){
               
                  String name1 = member['firstName'];
                 print(name1);
       });

JSON 数据

flutter: {
    "members": [
        {
            "firstName": "Michael"
        },
        {
            "firstName": "Jennifer"
        },
        {
            "firstName": "Lisa"
        }
    ]
}

控制台输出

flutter:Michael
flutter:Jennifer
flutter:Lisa

【问题讨论】:

    标签: json firebase flutter


    【解决方案1】:

    回答 2.0

    如果情况是将数据存储到数组中,那么我们需要有一个List<String> 来存储firstname 参数。 然后您可以使用 _firstNames 列表传递到您的 Firestore

        // This will store the name from the data
        List<String> _firstNames = [];
        var parsedData = json.decode(state.successResponse);
        List members = parsedData['members'];
        members.forEach((member){
             // simply add it to the list the data
             _firstNames.add(member['firstName']);
        });
    
        // print it to check, whether you have got it or not, 
        // outside the loop
        print(_firstNames);
    

    我将根据您的数据集仅在此代码示例中给出演示

      List<String> _firstNames = [];
      Map _membersData = {
        "members": [
            {
                "firstName": "Michael"
            },
            {
                "firstName": "Jennifer"
            },
            {
                "firstName": "Lisa"
            }
        ]
      };
      
      _membersData["members"].forEach((data){
        _firstNames.add(data["firstName"]);
      });
      print(_firstNames);
    
      // OUTPUT will be [Michael, Jennifer, Lisa]
    

    试试看告诉我

    【讨论】:

    • 好吧,我需要将数据存储在 Firestore 数据库中,您共享的输出我已经可以生成了。在firestore数据库文档中,我需要存储多个相同类型的字段,就像我们在java或swift或任何语言中引用数组一样,我需要将firstName 输出转换为数组,以便我可以将其保存在firestore数据库中。我希望您对 Firestore 数据库有所了解。
    • 你能告诉我你的输出应该是什么样子,不要编码,只是显示?我会在@JohnnyWarner 上帮助你。只是需要你的帮助。
    • 我共享的数据 JsonDataConsole Output 是我能够生成的输出类型。我需要将其转换为字符串数组,以便可以将其存储在 firestore 数据库中
    • 所以数组应该是这样的:['Michael', 'Jennifer', 'Lisa']@JohnnyWarner?
    • @JohnnyWarner 答案已更新,请查看并告诉我
    猜你喜欢
    • 2019-03-26
    • 2021-06-21
    • 2021-01-21
    • 2019-09-23
    • 1970-01-01
    • 2021-10-21
    • 2021-08-18
    • 2021-12-16
    • 2020-06-17
    相关资源
    最近更新 更多