flutter - 如何在flutter Provider中为单个小部件使用多个消费者
问题描述
我无法将多个消费者用于一个带有提供者的小部件?假设我的小部件是 CurvedNavigationBar,并且该小部件中有 4 个项目。我还有 4 个不同的类来扩展 ChangeNotifier 并负责 CurvedNavigationBar 中的每个项目。
如何在单个小部件中收听这 4 个更改通知?我查看了文档,找不到这样的例子..这甚至可能吗?我发现 Consumer 有一个 builder 方法,这意味着您只能构建一个小部件/并收听一次。
我是否应该有一个扩展 ChangeNotifier 的类,然后更新该小部件中的值并仅使用一个 Consumer 来侦听更新的值?
解决方案
还有一些其他Consumer
小部件。Consumer2
, Consumer3
,Consumer4
直到Consumer6
. 如果你想听 4 ChangeNotifier 你可以使用Consumer4
Consumer4(
builder: (context, changeNotifier1, changeNotifier2, changeNotifier3, changeNotifier4, child) {
// your widget
}
)
推荐阅读
- r - 如果您有少量数据点,ggplot2 如何使用 cut_number 拆分组?
- python - 使用python将经纬度坐标自动填充到excel中
- python - ImportError:无法导入名称“convert_from_path”
- php - Laravel Blade 模板中的代码补全 - vscode
- swift - 导航栏项目中带有操作按钮的另一个视图
- html - 如何正确调整iPhone上的宽度?
- android-studio - 如何在 Android Studio 中快速定位文件夹树结构中的文件?
- java - 我可以只用一种类型的变量在两种不同类型的数组中搜索值吗?
- c++ - std::string myString{"Hello", "World"} 中的第二个参数有什么作用?
- c - 在使用两个并行线程将一个数字相加然后减回 0 的 C 程序中,我得到一个非零的答案。这似乎不可能