1

为了使用 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

4

0 回答 0