【问题标题】:How to parse simple JSON file which contains lists and nested objects如何解析包含列表和嵌套对象的简单 JSON 文件
【发布时间】:2020-05-24 23:56:01
【问题描述】:

我已将我的 JSON 数据复制到 Flutter 中的本地文件并将其用作资产。

我需要从 JSON 文件中解析数据并获取 Text 小部件列表

import 'dart:convert';
import 'package:flutter/material.dart';
import 'JsonParsing.dart';

class Home extends StatefulWidget {
  @override
  HomeState createState() => new HomeState();
}

class HomeState extends State<Home> {
  List data;

  @override
  Widget build(BuildContext context) {
    return new Scaffold(
      appBar: AppBar(
        title: Text("Some App"),
      ),
      body: Container(
        child: Center(
          child: FutureBuilder(
            future:
                DefaultAssetBundle.of(context).loadString('jsons/data.json'),
            builder: (context, snapshot) {
              if (!snapshot.hasData) {
                return CircularProgressIndicator();
              }
              Map myData = json.decode(snapshot.data);
              var datas = User.fromJson(myData);
              print(myData.length);
              print(datas);

              return ListView.builder(
                itemBuilder: (BuildContext context, index) {

                  return Card(
                      child: ListTile(
                    title: Text(myData[index]['table_menu_list'][index]['category_dishes']
                        [index]['dish_name']),
                  ));
                },
                itemCount: myData == null ? 0 : myData.length,
              );
            },
          ),
        ),
      ),
    );
  }
}

此代码给出错误“类型'List'不是类型'Map'的子类型;”

AnyOne 帮助将 disc_name 的数据解析为我应用中的文本列表 该 JSON 中有很多 disc_name 列表。我想获取文本小部件中的所有列表名称

JSON 文件链接:JsonLinkoffoodData

【问题讨论】:

    标签: json list flutter dart nested


    【解决方案1】:

    【讨论】:

    • 如果我的 json 数据同时包含列表和嵌套数据怎么办。上述文档仅提供信息。对于嵌套类。我的 json 数据包含嵌套类中的列表
    【解决方案2】:
      with: print(myData.length);
      print(myData);
    

    这些是输出:

    我/颤动(16203):1 I/flutter (16203): [{restaurant_id: 1010000001, restaurant_name: UNI Resto Cafe, restaurant_image: http://restaurants.unicomerp.net/images/Restaurant/1010000001.jpg, table_id: 1, table_name: Riyadh-Table 01, branch_name: UNI Resto Cafe-Riyadh, nexturl: http://snapittapp.snapitt.net/api/menu/10/?org=1010000001&branch_id=1000000001&limit=10&offset=20&lang=en, table_menu_list:[{menu_category:沙拉和汤,menu_category_id:11,menu_category_image:http://restaurants.unicomerp.net/images/Restaurant/Item/ItemGroup_11.jpg,nexturl:http://snapittapp.snapitt.net/api/menu/20/?org=1010000001&branch_id=1000000001&menuCat=11&limit=10&offset=20&lang=en,category_dishes:[{dish_id:100000001,dish_name:菠菜沙拉,dish_price:7.95,dish_image:@98765432 :SAR,dish_calories:15,dish_description:新鲜菠菜、蘑菇和煮鸡蛋配温培根油醋汁,dish_Availability:true,dish_Type:2,nexturl:http://snapittap

    【讨论】:

      猜你喜欢
      • 2020-07-29
      • 1970-01-01
      • 2018-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多