我正在使用带有 sqlite 的 flutter。 'maps[i]' 中发生错误
Future<List<Employee>> getEmployee() async {
var dbClient = await db;
List<Map> maps = await dbClient!.query('employee', columns: ['id', 'name','phone']);
List<Employee> employees = [];
if (maps.length > 0) {
for (int i = 0; i < maps.length; i++) {
employees.add(Employee.fromMap(maps[i]));
}
}
return employees;
}
答案 0 :(得分:0)
这是因为 Employee.fromMap
期望 Map<String, dynamic>
按如下方式更改您的功能。
Future<List<Employee>> getEmployee() async {
var dbClient = await db;
List<Map> maps = await dbClient!.query('employee', columns: ['id', 'name','phone']);
List<Employee> employees = [];
if (maps.length > 0) {
for (int i = 0; i < maps.length; i++) {
employees.add(Employee.fromMap(Map<String, dynamic>.from(maps[i])));
}
}
return employees;
}