【发布时间】:2022-01-23 16:32:42
【问题描述】:
我不断收到这样的错误,有人可以解释错误的含义以及我需要做些什么来防止它们吗?
The argument type 'Future<List<CompanyModel>> Function(String)' can't be assigned to the parameter type 'Future<List<CompanyModel>> Function(String?)?'.
我有一个 ModelClass,我想从 api 获取一些值到可搜索的下拉小部件。
以下是小部件代码
DropdownSearch<CompanyModel>(
label: "Name",
onFind: (String filter) async {
var response = await Dio().get(
"http://5d85ccfb1e61af001471bf60.mockapi.io/user",
queryParameters: {"filter": filter},
);
var models = CompanyModel.fromJsonList(response.data);
return models;
},
),
还有我的模特课,很安静。
class CompanyModel {
final String name;
CompanyModel({required this.name});
factory CompanyModel.fromJson(Map<String, dynamic> json) {
return CompanyModel(name: json['comapny_name']);
}
static List<CompanyModel> fromJsonList(List list) {
return list.map((item) => CompanyModel.fromJson(item)).toList();
}
///this method will prevent the override of toString
String userAsString() {
return '#${this.name}';
}
///custom comparing function to check if two users are equal
bool isEqual(CompanyModel model) {
return this?.name == model?.name;
}
@override
String toString() => name;
}
【问题讨论】:
标签: flutter