Flutter 阐明BuildContext是如何工作的

Flutter 阐明BuildContext是如何工作的,flutter,Flutter,我试图完全理解BuildContext是如何工作的。我相信我理解它是什么——一种获取给定小部件在应用程序的grand scheme(更具体地说是它所在的垂直树,而不是任何水平树)中的位置(位置)信息的方法。然而,我正在读一篇文章,其中包含了一个常见的gotcha的演示,并希望得到一些澄清 以下是文章的链接: 它基本上是说,由于您创建的小部件的上下文与构建方法中返回的小部件的上下文不同,因此在某些情况下使用.of可能会导致错误。建议的解决方案是使用Builder小部件作为包装器,允许您分配新的上

我试图完全理解BuildContext是如何工作的。我相信我理解它是什么——一种获取给定小部件在应用程序的grand scheme(更具体地说是它所在的垂直树,而不是任何水平树)中的位置(位置)信息的方法。然而,我正在读一篇文章,其中包含了一个常见的gotcha的演示,并希望得到一些澄清

以下是文章的链接:

它基本上是说,由于您创建的小部件的
上下文
与构建方法中返回的小部件的
上下文
不同,因此在某些情况下使用
.of
可能会导致错误。建议的解决方案是使用
Builder
小部件作为包装器,允许您分配新的上下文

以下是一些代码示例:

图1(将导致错误):

图2(建议的解决方案):


根据上面的屏幕截图,我是否正确理解了这一点,或者我离开了这里?

如果我正确阅读了你的解释,那么是的,这也是我的理解。如果我正确阅读了你的解释,那么是的,这也是我的理解。