状态管理是一个复杂的话题。如果你觉得有些问题没有得到解答,或者这些页面上描述的方法不适用于你的用例,你可能说得对。

请从以下资源中了解更多信息,其中许多资源由 Flutter 社区贡献。

概述

#

在选择方法之前需要回顾的内容。

内置方法

#

setState

#

用于特定于 widget 的临时状态的低级方法。

ValueNotifierInheritedNotifier

#

一种仅使用 Flutter 提供的 API 来更新状态并通知 UI 更改的方法。

InheritedWidgetInheritedModel

#

用于在 widget 树中祖先和子代之间进行通信的低级方法。这是 package:provider 和许多其他方法在底层使用的。

以下由讲师指导的视频研讨会涵盖了如何使用 InheritedWidget

在新标签页中观看 YouTube 视频:“如何使用继承的 widget 管理应用程序状态”

其他有用的文档包括

社区提供的软件包

#

根据你的应用程序的复杂性和团队的偏好,你可能会发现采用状态管理包很有用。状态管理包通常有助于减少样板代码,提供专门的调试工具,并有助于实现更清晰和一致的应用程序架构。

Flutter 社区提供了各种各样的状态管理包。最适合你的应用程序的选择通常取决于应用程序的复杂性、团队的偏好以及你需要解决的具体问题。

要开始探索可用选项,请查看 pub.dev 网站上的 #state-management 主题,并优化搜索以查找符合你需求的包。