Не могли бы вы показать, как сериализовать / деэериализовать карту <> в / из json в dart? Например, вот простой класс данных:
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()
? Спасибо.