我们才刚刚开始开发我们的第一个Flutter应用程序,并且将ChangeNotifier应用于非小部件类和此类对象的处置已经遇到了一个小问题。在处理完类后的将来返回时,我们会得到异常,在将来返回后,我们会调用notifyListeners。
我看到过一些问题,建议使用mounted属性来检查对象是否已处置,但这仅在小部件中可用。 ChangeNotifier类使用它自己的检查来检查它是否已被处置,但是我们不能调用这些方法(我认为也不应该)
我当前的想法是,我们应该使用小部件类,而不对任何非小部件类应用ChangeNotifier。但是我找不到任何类似的问题,也找不到一些文档来告诉我最佳实践/指南。
class ExampleClass extends ChangeNotifier {
ExampleClass() {
}
final ExampleService _service = ExampleService();
List<Stuff> stuff;
Future<void> DoStuff() async {
stuff = await _service.getStuff();
notifyListeners();
}
}
我们正在寻找一种适当处理回调/返回期货的方法,并且仅在对象未处置的情况下才调用notifyListeners。