如何防止处置后调用模型?

问题描述 投票:1回答:1

我正在使用ProviderChangeNotifier进行状态管理。

class AskQuestionModel extends ChangeNotifier {

bool bool1 = false;

}

在我称之为无状态小部件中:

Model.bool1 = true;

通常来说,这很好。但是如果Model在我设置Model.bool1 = true;之前就已处理过(例如,如果用户按下返回按钮,则调用Navigator.pop()会得到错误:

E / flutter(26180):[错误:flutter / lib / ui / ui_dart_state.cc(148)]未处理的异常:处理后使用了模型。电子/颤振(26180):在模型上调用dispose()后,它就无法再使用被使用。

仅在Model.bool1 = true;仍处于活动状态时如何设置Model?>

我正在使用Provider和ChangeNotifier进行状态管理。类AskQuestionModel扩展ChangeNotifier {bool bool1 = false;在无状态小组件中,我称之为:Model.bool1 = true;通常,这是...

flutter dart flutter-layout flutter-provider
1个回答
0
投票

您可以使用StatefulWidget检查State,即State.mounted是否仍处于活动状态。处置后,State.mounted将为mounted

© www.soinside.com 2019 - 2024. All rights reserved.