我无法解决错误“类型”不是类型“''的子类型

时间:2020-08-23 14:44:02

标签: flutter

我正在尝试将索引传递到下一个屏幕。 如何将索引传递给brand.dop而不是brand?

     onTap: () {
      Navigator.push(
        context,
        MaterialPageRoute(builder: (context) => (Model(brand: brand.dop[index],))),
      );
    },

但是我有一个错误

类型“ Ac歌”不是“品牌”类型的子类型 我也尝试使用brand: brands[index]这会返回错误的索引 数据文件的结构

品牌:

  Brand(
    id: 1,
    title: "ACURA",
    image: "images/acura-logo.png",
    dop: acuras,
  ),

Ac歌:

  Acura(
    subject_id: 100,
    subject_title: "ILX",
    subject_image: "images/acura/ilx.png",
    model: ilxmodels,
  ),

ilxmodel:

  Ilxmodel(
      model_id: 10000,
      model_title: "ILX",
      model_image: "images/acura/ilx.png",
      kmh: 1
  ),

谢谢

1 个答案:

答案 0 :(得分:0)

从您的代码看来,Brand.dopAcura实例(即List<Acura>)的列表。

这意味着您正在尝试为Acura分配一个Model.brand实例,这显然不起作用。可能Model.brand的类型为Brand,而不是Acura

一种解决方案是使AcuraBrand的子类:

class Acura extends Brand