Использование json картографов для извлечения и сохранения данных с помощью firestore? - PullRequest
0 голосов
/ 10 февраля 2020

Я пытаюсь использовать json картографы для обработки сериализации и десериализации Flutter Firebase Firestore. Прямо сейчас я использую пакет json_serializable , который преодолел большинство препятствий.

Я вижу проблему при вставке / обновлении. Я должен быть в состоянии поместить свой объект дротика в форму json Map, а не форму String, чтобы правильно вставить его. Хотя библиотека обеспечивает реализацию функции Map<String, dynamic> toJson() => ..., эта функция не конвертирует вложенные объекты, что в основном делает ее бесполезной.

Чтобы обойти это, я конвертирую json в String, затем вернемся к Map, сделав следующее:

    final json = jsonEncode(reg);
    final jsonMap = jsonDecode(json);

Это явно плохо. Как я могу получить свой объект dart в форме json Map лучше?

Мне также приходится делать странные вещи, такие как получение данных моментального снимка, захват идентификатора документа и затем вставьте идентификатор в карту данных перед десериализацией, чтобы у меня был идентификатор в модели данных, а затем удалите его перед сериализацией. Должен быть лучший способ для автоматической сериализации и десериализации из firebase. Чего мне не хватает?

    final snapshot = document.data;
    snapshot['id'] = documentID;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...