我是不是需要为 Flutter 中的 Hive TypeAdapter 创建创建额外的模型?

Posted

技术标签:

【中文标题】我是不是需要为 Flutter 中的 Hive TypeAdapter 创建创建额外的模型?【英文标题】:Do I need to create extra model for Hive TypeAdapter creation in flutter?我是否需要为 Flutter 中的 Hive TypeAdapter 创建创建额外的模型? 【发布时间】:2021-05-09 06:06:50 【问题描述】:

我有费用模型,

  class Expense 
    String id;
    String amount;
    String details;
    String type;
    DateTime date;
    ExpenseMode mode;

    Expense(
        this.id, this.amount, this.details, this.type, this.date, this.mode);
  

Hive 模型为,

  @HiveType(typeId: 1)
  class Expense 
    @HiveField(0)
    String id;
    @HiveField(1)
    String amount;
    @HiveField(2)
    String details;
    @HiveField(3)
    String type;
    @HiveField(4)
    DateTime date;
    @HiveField(5)
    ExpenseMode mode;
    Expense(
        this.id, this.amount, this.details, this.type, this.date, this.mode);
  

我可以只使用 Hype Model 来表示 Expense 还是需要为 Hive TypeAdapter sepefic 保留单独的 Model?

【问题讨论】:

【参考方案1】:

Hive 不需要单独的 Hive Model 来专门创建 Type Adapter,我们可以编辑现有模型并将其转换为 Hive Model,并可以从中创建 Type Adapter。

【讨论】:

以上是关于我是不是需要为 Flutter 中的 Hive TypeAdapter 创建创建额外的模型?的主要内容,如果未能解决你的问题,请参考以下文章

Flutter + Hive 检查 Future Builder 的框中是不是存在值

Flutter 中的 Hive 映射框

如何在 Hive Flutter 中获取索引的值?

Flutter 在更新时删除 Hive 数据库

Flutter:没有为“Box”类型定义方法“listenable”(使用 Hive)

Flutter 将 Hive 数据库与 Riverpod 集成