首页 > 解决方案 > Flutter:路由上下文始终指向它正在路由的小部件 - 我希望它具有父小部件的上下文

问题描述

为了简化问题,

  1. 我有包含路线“页面目标(屏幕)”的路线的“应用程序”
  2. 我还使用 push() 从名为“Listview”的页面导航到“目标页面”
  3. 我在“目标页面”中有一个回调到“应用程序”,它发送一些数据。

现在的问题是当我导航到“目标页面”时,我可以正确使用回调但是当我从“列表视图”导航到“目标页面”时,我的回调会抛出错误“在 NULL 上调用”。

我知道(据我所知)这是因为它从“ListView”路由而来,因为 Listview(当然)没有提到的回调。

我需要的是一种路由到包含父上下文的“目标页面”的方法或将数据发送到应用程序(父级)的任何其他有效方式。

小部件流

希望这很清楚。谁能帮我?

标签: flutter

解决方案


如果您想获取特定小部件的上下文,请将其子/子组件包装到 Builder 小部件并将它们作为构建器提供。它将采用属于父级的新上下文并将其传递下去。


推荐阅读