如何专门为 Flutter 中的 Class 方法构建 Provider 包的 Consumer Widget?
Posted
技术标签:
【中文标题】如何专门为 Flutter 中的 Class 方法构建 Provider 包的 Consumer Widget?【英文标题】:How to build Consumer Widget of Provider Package Specifically for method of Class in Flutter? 【发布时间】:2021-11-10 06:06:16 【问题描述】:我想以这样的方式使用提供者包的消费者小部件,它只会在类的特定方法运行或 notifyListeners() 调用时运行。
这是一个类
Class Example with ChangeNotifier
void exampleMethod()
//....Do SomeThing
notifyListeners();
void exampleOneMethod()
//....Do SomeThing
notifyListeners();
所以当我像这样在一些小部件中调用消费者时:
Consumer<Example>(builder:(_,ex,__)=>SomeWidget(
ex.exampleOneMethod();
)
只有在 exampleOneMethod 运行而不是在其他方法上运行时,Soo Consumer Widget 才会重新构建。
【问题讨论】:
【参考方案1】:如果其他方法调用notifyListeners()
,则应重建消费者小部件如果有人打电话通知,则重建
【讨论】:
是的,就是这样,但是当该方法调用 notifyListeners() 时,它将重建整个 Stateless/Statefull 小部件。但我只想重建整个 Stateless/Statefull 小部件的特定部分。 也许您可以尝试将 Consumer 放在更深的树调用中,您对 exampleOneMethod 的使用是什么?以上是关于如何专门为 Flutter 中的 Class 方法构建 Provider 包的 Consumer Widget?的主要内容,如果未能解决你的问题,请参考以下文章
Flutter 中extends、implements、with