Dart-_InternalLinkedHashMap <String,dynamic>如何转换为Map <String,dynamic>?

时间:2019-09-08 20:00:04

标签: json flutter dart

我在Flutter应用中使用了package dio。得到我的api问题的答复。  response.data获取类型_InternalLinkedHashMap。我需要将此值转换为Map。我尝试了许多选项,但这不起作用。

我无法更改服务器响应。有什么建议吗?

3 个答案:

答案 0 :(得分:1)

尝试一下:

Map<String, dynamic>.from(yourData)

答案 1 :(得分:1)

我是如何使用

将_InternalLinkedHashMap 转换为HashMap的?
var map = HashMap.from(value) // value is _InternalLinkedHashMap <dynamic, dynamic>

在这里,我可以使用Class Method将地图转换为对象,以便可以在代码中使用它,就像这样

User.fromJson(map) //  this return User object 

您可以使用website直接从JSON生成Dart Model类。

这是User.Json方法的代码段:

SeatBookingModel.fromJson(Map<String, dynamic> json) {
userName= json['userName'];
userEmail= json['userEmail'];
 }

快乐编码

答案 2 :(得分:0)

您不需要进行任何转换。 _InternalLinkedHashMap<K, V>已经是Map<K, V>的类型。

void main() async {
  final map = <String, int>{};
  print(map.runtimeType);
  print('${map is Map<String, int>}');
}

打印:

_InternalLinkedHashMap<String, int>
true

({Map's default constructor is a factory constructor构造一个LinkedHashMapLinkedHashMap的默认构造函数也是一个工厂构造函数,它构造并返回一个内部_InternalLinkedHashMap对象。)

相关问题