首页 文章

'Invalid override. The type isn' t实现接口时的子类型

提问于
浏览
1

我正在尝试将MealsRepository接口实现到MealsRepositoryImpl中,但是我收到以下错误:

无效覆盖 . 'MealsRepositoryImpl.findAllForCanteenByDate'('(int,DateTime) - > Future Map int,dynamic')的类型不是'MealRepository.findAllForCanteenByDate'的子类型('(int,DateTime) - > Future Map int,Meal' ) .

我看不出自己的错误 . 我目前正在使用Dart插件使用Intellij .

我已经更新了Dart和Flutter插件 .

abstract class MealsRepository {
  Future<Map<int, Meal>> findAllForCanteenByDate(int canteenId, DateTime date);
}

class MealsRepositoryImpl extends MealsRepository {

  MensaApi api;

  MealsRepositoryImpl(this.api);

  @override
  Future<Map<int, Meal>> findAllForCanteenByDate(int canteenId, DateTime date) {
    return api.getMealsForCanteenByDate(canteenId, date).then((meals) {
      return meals;
    });
  }
}

1 回答

  • 0

    好的 - 事实证明错误实际上是我忘了导入Meal类 . 有点愚蠢,但错误信息并没有真正表达它 .

相关问题