GlobalKey是唯一可以访问State和BuildContext的密钥吗?

时间:2019-07-16 18:59:49

标签: android flutter

在许多文章中,问题和文档都写得很清楚:“如果不需要,请不要使用GlobalKeys”

Documentation的州If you don't need any of the features listed above, consider using a Key, ValueKey, ObjectKey, or UniqueKey instead.

但是不清楚引用哪些功能,其他键上的文档也没有说明其功能的扩展。

GlobalKeys是unique across the entire app,因此需要通过整个应用程序访问所有Forms吗?如果I need to access the context of and object to get its lay-ed out properties我只能使用GlobalKeys并将大量对象公开给整个应用程序?

因为

GlobalKey 文档上,访问 BuildContext State 的需求为a feature listed above,而 ObjectKey < / em>或 UniqueKey is not a GlobalKey LocalKey类

或者因为 key “仅仅是小部件的标识符”(我应该在头上将它们重命名为 WidgetID 吗?)。我可以在Forms上使用 LocalKey 而不是 GlobalKey ,因为所有逻辑和小部件的“状态视图”使用都可以作为Form Widget的子级放置吗? (因此符合 LocalKey 范围说明)

0 个答案:

没有答案