Redstone Mapper с флаттером

Я хочу использовать Redstone Mapper для декодирования Json объектов. Однако флаттер не поддерживает зеркала, и поэтому я не могу инициализировать маппер поверх обычного bootstrapMapper();

Поэтому я посмотрел, я должен использовать staticBootstrapMapper(...)

/**
     * initialize the mapper system.
     * 
     * This function provides a mapper implementation that
     * uses data generated by the redstone_mapper's transformer,
     * instead of relying on the mirrors API.
     * 
     */ 
    void staticBootstrapMapper(Map<Type, TypeInfo> types) {
      _staticTypeInfo = types;

      configure(_getOrCreateMapper, _createValidator);
    }

Ссылка на исходный код

Я не знаю, что я должен положить в карту Map<Type, TypeInfo> types, Допустим, я хочу использовать ObjectData для преобразования данных JSON в этот объект.Но как мне использовать этот метод инициализации? К сожалению, я не нашел пример, как использовать этот статический менеджер начальной загрузки.

class ObjectData {
  @Field()
  @NotEmpty()
  DataType dateType; // might be a User object

  @Field()
  @NotEmpty()
  String id;

  @Field()
  @NotEmpty()
  List<String> versions;
}

1 ответ

Решение

Зеркала не поддерживаются во Flutter, как отмечено выше в комментариях.

Вы можете попробовать альтернативные пакеты, которые не зависят от зеркал:

Из этих двух (и других) json_serializable Похоже, проще всего начать, но, возможно, не так много функций.

Другие вопросы по тегам