【发布时间】:2022-10-05 02:22:13
【问题描述】:
我在迁移到新版本的 flutter_bloc 时遇到问题。 这个:
Stream<NewsState> mapEventToState(NewsEvent event) async* {
if (event is FetchTopAndOtherNewsEvent) yield* _repository.fetchTopAndOtherNews(event);
if (event is FetchNewsEvent) yield* _repository.fetchNews(event);
}
我重写为:
class NewsBloc extends Bloc<NewsEvent, NewsState> {
final NewsRepository _repository = NewsRepository();
NewsBloc() : super(NewsInitialState()){
on((event, emit) {
if (event is FetchTopAndOtherNewsEvent) emit(_repository.fetchTopAndOtherNews(event));
if (event is FetchNewsEvent) emit(_repository.fetchNews(event));
});
}
但可以理解的是,它给出了一个错误,参数类型“Stream”不能分配给参数类型“NewsState”。
【问题讨论】:
-
你能把
_repository.fetchNews()的代码贴出来吗?
标签: flutter dart flutter-bloc