0

我对 bloc 8.0.1 的上次更新有问题我不能使用 bloc 观察者,我使用了 BlocOverrides 仍然无法工作,这是我的代码

我的主要课程代码

BlocObserver

import 'package:bloc/bloc.dart';

class MyBlocObserver extends BlocObserver {
  @override
  void onCreate(BlocBase bloc) {
    super.onCreate(bloc);
    print('onCreate -- ${bloc.runtimeType}');
  }

  @override
  void onChange(BlocBase bloc, Change change) {
    super.onChange(bloc, change);
    print('onChange -- ${bloc.runtimeType}, $change');
  }

  @override
  void onError(BlocBase bloc, Object error, StackTrace stackTrace) {
    print('onError -- ${bloc.runtimeType}, $error');
    super.onError(bloc, error, stackTrace);
  }

  @override
  void onClose(BlocBase bloc) {
    super.onClose(bloc);
    print('onClose -- ${bloc.runtimeType}');
  }
}
4

2 回答 2

0

我认为你的问题是依赖关系,使用

   flutter_bloc: ^8.0.1

并将它的包导入到 main 和 MyBlocObserver 类

import 'package:flutter_bloc/flutter_bloc.dart';

这对我有用。这是我使用的小项目点击

于 2022-01-15T15:00:05.667 回答
0

我正在使用下一个代码。

 BlocOverrides.runZoned(
    () => runApp(const App()),
    blocObserver: AppBlocObserver(),
 );

您可以在颤振包示例中看到它。我遇到了和你一样的问题,但是有了这个改变,一切又正常了。

于 2022-02-23T13:58:08.070 回答