【问题标题】:how to select just one item from json in flutter如何在颤动中从json中只选择一项
【发布时间】:2021-06-26 02:29:01
【问题描述】:

您好,我想在我的应用程序中显示 SPX 价格,并且有这个 json API 我需要从这个 API 中选择 SPX 数据我该怎么做??

    [{"ask":"28.47500","bid":"27.47500","name":"USDUAH","time":"1616772920.000"},

{"ask":"3972.06000","bid":"3971.16000","name":"SPX","time":"1617047940.000"},

{"ask":"0.71965","bid":"0.71916","name":"AUDCHF","time":"1617076421.403"}]]

【问题讨论】:

    标签: json api flutter dart flutter-test


    【解决方案1】:

    这可能有效

    List data = parseResponse(response.body)
    var spx ;
    data.forEach((element) {
            if (element["name"]=="SPX"){
               spx =element; // access the spx object to get other data
             }
            });
    
    
    static List<Trade> parseResponse(String responseBody) { // for converting array of objects to object list
          final parsed = json.decode(responseBody).cast<Map<dynamic, dynamic>>();
          return parsed.map<Trade>((json) => Trade.fromJson(json)).toList();
        }```
    

    【讨论】:

      【解决方案2】:

      你可以这样做:

      final lst = [{"ask":"28.47500","bid":"27.47500","name":"USDUAH","time":"1616772920.000"},
      {"ask":"3972.06000","bid":"3971.16000","name":"SPX","time":"1617047940.000"},
      {"ask":"0.71965","bid":"0.71916","name":"AUDCHF","time":"1617076421.403"}];
      
      final res = lst.where((element) => element['name'] == 'SPX').toList();
      

      查看 DartPad here 上的完整示例

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-11-24
        • 2011-06-12
        • 2021-11-25
        • 2020-02-08
        • 2021-06-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多