Flutter:- BlocBuilder或单独的有状态Widget

disho6za  于 2023-10-22  发布在  Flutter
关注(0)|答案(1)|浏览(135)

只是一个问题,我在寻找提高性能的Flutter应用程序,我一直在工作。
假设我有一个屏幕,其中我有不同的小部件要显示,让这些小部件的名称为heroWidget和每个heroWidget可以选择改变其颜色和文本,屏幕将有21个这样的heroWidget。
为了实现这一点,我做了以下工作:
1.为heroWidget编写了一个帮助函数,它将有一个下拉菜单,允许用户选择更改颜色或写入任何文本的选项。
1.使用flutter_bloc包并编写了一个块来处理colorChangeEvent和textWriteEvent!!.
1.将BlocBuilder Package 在heroWidget的顶部(在helper函数中)。这个BlocBuilder将监听colorChangeState或textWriteState,并根据它们各自的索引值来构建21个heroWidgets中的哪一个,然后调用builder方法来构建具有新值的widget。
1.使用ListView.builder构建21个不同heroWidget的列表。
我的问题是.我正在使用21个BlocBuilders为21个HeroWidgets这将影响应用程序的性能!?.
如果我把一个heroWidget作为一个Statefull Widget,然后使用setState更新状态,性能会提高吗?!

x4shl7ld

x4shl7ld1#

一是“提升业绩”.问问自己有没有问题。如果不是,考虑是否过早优化。
简短的答案可能是:不,它不会影响应用程序的性能。
听起来用户不会注意到在这种情况下由于您的几个BlocBuilder而导致的任何性能下降。如果你有任何性能问题,我不会怀疑使用BlocBuilders。而不是做什么比这更重要。我在一个视图中有数百个BlocBuilder,没有任何问题。
我给你的建议是,不要担心性能,直到它是一个被证明的问题。确保你的解决方案是可读的,可测试的和可维护的。这是需要考虑的更重要的方面。

相关问题