Заранее извиняюсь за этот ужасный вопрос. Я скорее надеюсь, что специалист в данной области поймет, что идиот делает, что я делаю неправильно, если вам нужна дополнительная информация, просто спросите!
У меня есть несколько сложный объект, который мне нужно сохранить с помощью mobx.
export default class Field {
@observable public key: string;
@observable public fieldCoordinates: Coords;
@obser... more and more properties.
Coords выглядит как
export default class Coords {
@observable public id: string;
@observable public coordinates: Array<LatLng>;
}
и LatLng
export default class LatLng {
@observable public latitude: number;
@observable public longitude: number;
}
В моем магазине у меня есть
@observable public fields: Array<Field> = new Array<Field>();
и в методе Save
я использую
store.save("fields", toJS(this.fields));
Однако, когда я пытаюсь использовать объект coordinates
, чтобы выложить свою карту, я получаю ошибку
Ошибка при обновлении свойства 'координаты' вида, управляемого: AIRMapPolygon
Я получаю данные, используя этот метод (в магазине)
@computed public get DataSource(): Array<LatLng> {
return this.field.fieldCoordinates.coordinates.slice();
}
Однако, когда я проверяю массив fields
, когда он поступает в хранилище, он удаляется из массива LatLng. (список точек содержит 9 элементов в массиве, но данные исчезли (я открыл первый элемент, и в нем есть только proto
, а не данные).
Я предполагаю, что я делаю что-то не так, или использую неправильные типы, или что-то простое ... Вы можете направить меня в правильном направлении?