首页 > 解决方案 > 当前未查看时跳过重新构建重载小部件

问题描述

我有一个包含 10000 个元素的颤动屏幕小部件 A。每次flutter构建它时加载这个小部件都需要时间。

同时,我在这个小部件中做 Navigator.push 以打开一个新的屏幕 B。

每次当我在屏幕 B 中推送新屏幕 C 或弹出屏幕 C 时,颤振重新构建小部件 A。在当前未查看该屏幕时构建屏幕小部件 A 需要时间。它只是在后台。

如果未查看,我想跳过构建屏幕小部件 A。我可以知道是否可以这样做?

非常感谢!

标签: flutter

解决方案


您可以尝试设置https://docs.flutter.io/flutter/material/MaterialPageRoute/maintainState.html false
或者只是将小部件存储在变量中并在每次build()调用时返回相同的实例。


推荐阅读