Хук Completer Flutter вызывает ошибку неверного состояния

Для управления индикацией pull-to-refresh во Flutter с помощью BLoC я создал настраиваемый хук Completer в качестве альтернативы использованию виджета с отслеживанием состояния, и в целом он работает нормально, однако с горячей перезагрузкой я сталкиваюсь с 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

0 ответов

Другие вопросы по тегам