类型“_InternalLinkedHashMap<dynamic, dynamic>”不是 'function result' 类型 'List<Map<String, dynamic>>' 的子类型

type '_InternalLinkedHashMap<dynamic, dynamic>' is not a subtype of type 'List<Map<String, dynamic>>' of 'function result'

我在写这个问题之前查看了以下链接:

代码:

List data = [
    {
      "title" : "Particulate matter",
      "desc" : "The term used to describe a mixture of solid particles and liquid droplets found in the air",
      "amt" : 500,
      "diseases" : "Particulate matter is responsible for asthma in many people. Also, a topic dermatitis, allergic rhinitisare diseases that can be caused by this",
      "precaution" : "Switching to cleaner appliances and reducing the amount of smoking will surely ensure less exposureof particulate matter in the environment",
      "image" : 'https://images.pexels.com/photos/3668372/pexels-photo-3668372.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=750&w=1260',
      "color" : Color(0xFF6E7E5D).withOpacity(.3)
    },
// loads of data in this structure
];

// the line of error
Map indexedData = Map<String, dynamic>.from(data[index]);

我只是不知道为什么会出现错误,所以请帮帮我。谢谢!

编辑:如果这有助于解决问题,我可以将数据更改为一个限制

你应该这样声明类型:

Map<String, dynamic> indexedData = Map<String, dynamic>.from(data[index]);
List data = [
    {
      "title": "Particulate matter",
      "desc":
          "The term used to describe a mixture of solid particles and liquid droplets found in the air",
      "amt": 500,
      "diseases":
          "Particulate matter is responsible for asthma in many people. Also, a topic dermatitis, allergic rhinitisare diseases that can be caused by this",
      "precaution":
          "Switching to cleaner appliances and reducing the amount of smoking will surely ensure less exposureof particulate matter in the environment",
      "image":
          'https://images.pexels.com/photos/3668372/pexels-photo-3668372.jpeg?auto=compress&cs=tinysrgb&dpr=2&h=750&w=1260',
      "color": Color(0xFF6E7E5D).withOpacity(.3),
    },
  ];

  Map<String, dynamic> indexedData = {};

  data.forEach((mapElement) {
    Map map = mapElement as Map;
    map.forEach((key, value) {
      indexedData[key] = value;
    });
  });

print(indexedData);