我有一个包含 10000 个元素的颤动屏幕小部件 A。每次flutter构建它时加载这个小部件都需要时间。
同时,我在这个小部件中做 Navigator.push 以打开一个新的屏幕 B。
每次当我在屏幕 B 中推送新屏幕 C 或弹出屏幕 C 时,颤振重新构建小部件 A。在当前未查看该屏幕时构建屏幕小部件 A 需要时间。它只是在后台。
如果未查看,我想跳过构建屏幕小部件 A。我可以知道是否可以这样做?
非常感谢!
我有一个包含 10000 个元素的颤动屏幕小部件 A。每次flutter构建它时加载这个小部件都需要时间。
同时,我在这个小部件中做 Navigator.push 以打开一个新的屏幕 B。
每次当我在屏幕 B 中推送新屏幕 C 或弹出屏幕 C 时,颤振重新构建小部件 A。在当前未查看该屏幕时构建屏幕小部件 A 需要时间。它只是在后台。
如果未查看,我想跳过构建屏幕小部件 A。我可以知道是否可以这样做?
非常感谢!
您可以尝试设置https://docs.flutter.io/flutter/material/MaterialPageRoute/maintainState.html false,
或者只是将小部件存储在变量中并在每次build()调用时返回相同的实例。