类型“ExpandIterable<InterfaceType, MethodElement>”不是“iterable”类型“Iterable<MethodElementImpl>”的子类型

Pla*_*2nd 4 mobile dart flutter dio build-runner

我想使用 dio 和 build_runner 创建一个 api 服务。但是当我flutter pub run build_runner在终端上运行此命令时出现此错误

[严重] Retrofit_generator:在 lib/web_services/api_services.dart 上进行改造:

类型“ExpandIterable<InterfaceType, MethodElement>”不是“iterable”的“Iterable”类型的子类型

这是我的 api 服务代码。

part 'api_services.g.dart';

@RestApi(baseUrl: Preferences.hrmsAPI)
abstract class RestClient {
  factory RestClient(Dio dio) = _RestClient;

  @FormUrlEncoded()
  @GET('config')
  Future<WrappedResponse> config();

  @FormUrlEncoded()
  @GET('profile')
  Future<WrappedResponse> profile(@Header('Authorization') String token);
}
Run Code Online (Sandbox Code Playgroud)

Jac*_*per 5

报告的问题:https ://github.com/trevorwang/retrofit.dart/issues/345

临时修复:

retrofit_generator:
git:
  url: https://github.com/Chimerapps/retrofit.dart.git
  ref: 9f90296751984b359937c38563da5b19db5550f5
  path: generator
Run Code Online (Sandbox Code Playgroud)

更新

2021 年 6 月 4 日,我们获得了新的软件包更新,解决了该问题。

retrofit_generator 2.0.0+1
Run Code Online (Sandbox Code Playgroud)