首页 > 解决方案 > Flutter 使用具有作用域模型的多个模型

问题描述

我正在尝试在 Flutter 中构建一个费用跟踪器应用程序,并决定使用 Scoped Model 进行状态管理。该应用程序有一个用户,他可以有多个帐户,每个帐户可以有许多交易。

我如何对这些进行建模以与 Scoped Model 一起使用,我一直在选择一个好的架构。

如果我创建一个包含 Accounts 列表的 UserModel,其中每个 Account 都是 AccountModel,那么从 AccountModel 内部触发和更新不会触发访问 UserModel 类的那些。

标签: dartflutterstatescoped-model

解决方案


class CombinedWidget extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    final username =
      ScopedModel.of<UserModel>(context, rebuildOnChange: true).username;
    final counter =
      ScopedModel.of<CounterModel>(context, rebuildOnChange: true).counter;

    return Text('$username tapped the button $counter times');

  }
}

您可以在源代码中看到完整的示例。


推荐阅读