首页 > 解决方案 > 在flutter-中获取方法的buildContext-作为参数或使用globalKey的currentContext

问题描述

我有一些需要buildContext 的方法,例如弹出当前页面、显示模式、隐藏snackBar。

我不确定哪个是获取 buildContext 的方法的更好解决方案:

  1. 创建脚手架状态的全局键并调用全局键的currentContext,
  2. 将 buildContext 从 build 方法一直传递到当前方法

这两种方式有区别吗?或者,如果它们在这种情况下同样适用,那么一种方式是否比另一种方式更受欢迎或更好?

谢谢

标签: flutterdartflutter-layout

解决方案


我认为在大多数情况下使用全局键被认为是不好的做法。而且我认为使用 aBuildContext作为参数的函数在使用Navigator,Theme和时很常见MediaQuery。请记住,使用类而不是函数来制作可重用的 widget-tree是更好的做法。


推荐阅读