flutter - Navigator pushNamed 未处理小部件
问题描述
我有一个与状态小部件和导航器路由相关的问题。
我的应用程序基于使用 Navigator.of(context).pushNamed 在不同的屏幕上移动。我意识到有状态的小部件一直卡在小部件树中。有状态的小部件从未被释放。
我希望处理这些小部件。有几个原因。
- 该应用程序变得很慢,因为它在内存中维护小部件。
- 有状态的小部件包含 StreamBuilder,它们正在监听变化。我意识到之前像 5 个屏幕一样加载的小部件,它们会对流中的变化做出反应。
我试过 `Navigator.of(context).pushReplacementNamed 。在这种情况下,我面临的问题是后退按钮停止工作。
我希望能够回到以前的路线,但不要将所有有状态的小部件加载到内存中,听听流的变化。
解决方案
推荐阅读
- c# - System.NullReferenceException:“对象引用未设置为对象的实例。” 组合框选定的项目
- flutter - Flutter:允许用户发送邀请邮件
- c# - 如何使用 SelectToken 从 Json 中获取特定值
- python - 如何在安装 bcrypt 时修复 pypy3 错误?
- android - 有主键时如何在Android中使用Dao Room将列表插入到表中
- thymeleaf - 在 XML 中使用 CDATA 换行文本
- python - 使用sqlalchemy的informix DB的Python数据库连接
- javascript - React document.getElementById() 在浏览器控制台中可找到时为 null
- python - 是否可以在 python 中将文本转换为单个列表?
- postgresql - Strapi.io graphQL 嵌套排序