簡體   English   中英

Flutter 中的 StatefulBuilder VS StatefulWidget - 性能

[英]StatefulBuilder VS StatefulWidget in Flutter - performance

我們可以使用StatefulBuilder來更新StatelessWidget的 UI 上的特定元素,另一方面,我們可以存檔類似的結果,將StatelessWidget移動到StatefulWidget並擺脫StatefulBuilder小部件。

我更喜歡StatefulBuilder因為它使代碼更簡單、更清晰,但在性能方面什么是最好的

A : 使用StatelessWidget將所有內容包裝在StatefulBuilder

B : 使用StatefulWidget

兩者之間的性能實際上沒有差異。 兩者都涉及創建 State 對象。

鑒於您使用全局狀態,沒有真正的理由使用與現有全局狀態的一部分相關的 StatefulBuilder。 StatefulBuilder 提供了一種機制,可以將自己的關聯 State 對象與您定義的狀態關聯起來並且可以改變。 在您的情況(全局數據)中,您的狀態已經在內存中,因此您不妨在 StatefulBuilder 構建器回調中對其進行變異,例如

setState(() => myGlobalCounter.increment());

您可能知道,人們通常更喜歡基於 InheritedWidget 的狀態解決方案。 雖然這在某些方面可以被認為等同於將全局狀態移動到全局樹位置,但它更容易允許所有感興趣的 Widget 被通知該狀態的更改。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM