在某个阶段是否有任何方法可以杀死AutomaticKeepAliveClientMixin的状态?
背景故事: 我正在建立多页表单。由于当前步进器的水平线已断开,因此决定使用PageView,垂直线看起来不太好-用户看不到那里还有多少步。导航时需要保持每个页面的状态,因此我选择了AutomaticKeepAliveClientMixin。但是我希望在用户使用完“表单”(在这种情况下,是在PageView的末尾)后清除状态。
答案 0 :(得分:0)
我从未尝试过,但是以下方法应该可以工作:
如果您使用的是AutomaticKeepAliveMixin
,那么您还实现了其wantKeepAlive
方法。现在,您可能只是返回一个静态true
值以保留您的状态。
实际上,应该检查是否要保留页面状态,而不是始终返回true。每当这种情况发生变化时,都应该调用updateKeepAlive
来通知小部件的KeepAlive祖先,该小部件的后代之一已经“改变了主意”。