假设我们有一个flutter项目,有两个屏幕,第一个屏幕是一个仪表盘或登陆页,从旁边的第二个屏幕上读取一个值(比如说count number)。
我试过将提供者作为一个状态管理器,但问题是登陆页读取的是一个空值,因为第二个必须先加载设置计数器,而这不会发生。
问题是我如何才能实现这一点?
你需要使用一个 ChangeNotifierProvider
包裹你的第一个屏幕,通常这是在 MaterialApp
配置。在这里你还可以将你的值初始化为默认值。
然后在第二页你可以得到你的 ChangeNotifier
和chenge它的值,所以第一页会得到更新。
请看一下 ChangeNotifierProvider
关于如何设置的文档和示例 Provider
并将其作为状态管理解决方案。一些例子 此处, 此处 和一段视频 此处.