繁体   English   中英

参数类型'Map<dynamic, dynamic> ' 不能分配给参数类型 'Map<string, dynamic> '</string,></dynamic,>

[英]The argument type 'Map<dynamic, dynamic>' can't be assigned to the parameter type 'Map<String, dynamic>'

我正在使用 flutter 和 sqlite。 '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;
  }

这是因为Employee.fromMap期望Map<String, dynamic>更改您的 function 如下。

   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;
      }

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM