【问题标题】:the argument type 'map dynamic dynamic ' can't be assigned to the parameter type 'map string dynamic'参数类型“映射动态动态”不能分配给参数类型“映射字符串动态”
【发布时间】:2025-12-12 03:50:01
【问题描述】:

我在我的ApiRepository 课程中使用dio。但是这一行显示错误

 _dio.get(this.url, queryParameters: this.payload).then((response) {...

参数类型'map dynamic dynamic'不能分配给参数类型'map string dynamic'

全班

class ApiRepository {

  final String url;
  
  final Map payload;

  ApiRepository(this.url, this.payload);

  final Dio _dio = Dio();

  void get({

    required Function() beforeSend,

    required Function(dynamic data) onSuccess,

    required Function(dynamic error) onError,

  }) {
   
 _dio.get(this.url, queryParameters: this.payload).then((response) {
     
 if (onSuccess != null) {

        onSuccess(response.data);

      }

    }).catchError((error) {

      if (onError != null) {

        onError(error);

      }
    });
  }
}

【问题讨论】:

  • 不要试图通过粘贴文本来绕过系统,多描述一下你的努力和错误。

标签: flutter dart arguments


【解决方案1】:

queryParameters 需要 Map<String, dynamic> 但默认 MapMap<dynamic, dynamic>

payload的映射改为
final Map<String, dynamic> payload;

【讨论】: