为了使用 BLoC 在 Flutter 中管理下拉刷新指示,我创建了一个自定义 Completer 钩子作为使用 Stateful Widget 的替代方法,一般来说,它工作得很好,但是我遇到了热重载Bad state: Future already completed
import 'dart:async';
import 'package:flutter/src/widgets/framework.dart';
import 'package:flutter_hooks/flutter_hooks.dart';
class _CompleterHook extends Hook<Completer> {
@override
HookState<Completer, Hook<Completer>> createState() => _CompleterHookState();
}
class _CompleterHookState extends HookState<Completer, _CompleterHook> {
Completer _completer;
@override
void initHook() {
_completer = Completer<void>();
super.initHook();
}
@override
Completer build(BuildContext context) => _completer;
}
Completer<void> useCompleterHook() {
return Hook.use(_CompleterHook());
}
不知道我是否错过了一些东西,它实际上只是在 HR 上,所以完全是一个发展烦恼,但我宁愿不学会忍受它。有关解决该问题的方法的任何想法或建议。
TIA