目前我正在开发体育赛事评分应用程序。这个应用的结构是这样的:

现在,我正在尝试使用provider包来包含状态管理。
计分发生在Widget树的最底部,使用计数器,每个Widget根据go - creating事件上的用户输入初始化各自的命名模型,添加部门和玩家,每个都发生在一个对话框中。
我知道我需要为事件列表创建一个提供程序,但是,我不确定如何构建其余的状态管理。到目前为止,我尝试通过在ChangeNotifier中混合并将所有更改数据的方法移动到使用notifyListeners()管理状态的位置,将每个模型转换为提供者。然而,经过大量的努力和搜索,我发现这不是管理模型内部状态的最佳方法。
哪种方法是理想的?我应该通过事件列表提供程序来管理状态,还是应该在单独的文件中为每个模型创建一个提供程序?如果是这样的话,是怎么做的?
发布于 2020-11-03 08:47:29
我不太确定你的项目的全部范围,也不太确定你对它的投入程度,但我强烈建议你查看BLOC库,作为一种替代的状态管理解决方案,以简单地管理你的状态。
学习曲线相当低,有许多关于如何确切地使用这个库的教程,同时还有一个事实,那就是BLOC对来自外部人的监听器的依赖要少得多,如果你正在为使用我的经验中的库而苦苦挣扎。
以下是指向BLOC Library的链接
如果您仍然坚持使用Provider,我建议您出于多种原因在单独的文件中为每个模型创建一个provider,例如关注点的分离、状态管理的简单性以及每个不同模型的清晰度。
https://stackoverflow.com/questions/64655043
复制相似问题