你能展示一下如何在Dart中将map<>序列化/反序列化为JSON吗?比如,这里有一个简单的数据类:
class SimpleData {
int _blah;
String _str;
SimpleData([this._blah, this._str]);
SimpleData.fromJson(Map<String, dynamic> json) {
_blah = json['b'];
_str = json['s'];
}
Map<String, dynamic> toJson() => {
'b' : _blah,
's' : _str,
};
}
下面是用于地图的SimpleData类:
class MapTest {
Map<int, SimpleData> _mapHell = Map<int, SimpleData>();
MapTest() {
_mapHell[1] = SimpleData(42, "Astfgl");
_mapHell[666] = SimpleData(1234, "Vassenego");
}
MapTest.fromJson(Map<String, dynamic> json) {
_mapHell = jsonDecode(json['coworkers']);
}
Map<String, dynamic> toJson() => {
'coworkers' : jsonEncode(_mapHell),
};
}
现在,调用MapTest.toJson()
时,会抛出以下错误:
将对象转换为可编码对象失败:_LinkedHashMap len:2
您有没有想法这些toJson()/fromJson()
方法出了什么问题?谢谢。