首页 > 解决方案 > 如何在 Flutter 中序列化一个抽象类?

问题描述

我有一个抽象模型类,它有一个抽象函数来确定小部件如何切换状态,我想保留它。我目前正在尝试实现https://pub.dev/packages/json_serializable但它希望我将字段类型切换为动态类型而不是我的抽象类型。您不能 @JsonSerializeable 抽象类,当我切换到动态类型时,即使具体实现具有有效的 toJson 方法,打印也会读取为“类”的实例。

我应该放弃 OOP 原则实现还是这里有替代解决方案?

标签: jsonflutterserialization

解决方案


    <String, dynamic>{
      'command': instance.command,
      'questions': instance.questions.map((e) {return (e as Question).toJson();}).toList(),
    };

通过为我的抽象类编写我自己的序列化程序来解决


推荐阅读