首页 > 解决方案 > Navigator pushNamed 未处理小部件

问题描述

我有一个与状态小部件和导航器路由相关的问题。

我的应用程序基于使用 Navigator.of(context).pushNamed 在不同的屏幕上移动。我意识到有状态的小部件一直卡在小部件树中。有状态的小部件从未被释放。

我希望处理这些小部件。有几个原因。

  1. 该应用程序变得很慢,因为它在内存中维护小部件。
  2. 有状态的小部件包含 StreamBuilder,它们正在监听变化。我意识到之前像 5 个屏幕一样加载的小部件,它们会对流中的变化做出反应。

我试过 `Navigator.of(context).pushReplacementNamed 。在这种情况下,我面临的问题是后退按钮停止工作。

我希望能够回到以前的路线,但不要将所有有状态的小部件加载到内存中,听听流的变化。

标签: flutterdart

解决方案


推荐阅读