gpt4 book ai didi

flutter - 如何为 'onEvent' 的事件实现去抖动器?

转载 作者:行者123 更新时间:2023-12-04 14:48:58 27 4
gpt4 key购买 nike

transformEvents 方法将在 bloc 版本 8 中删除,我们应该使用 onEvent 方法代替,我们如何为事件实现 debounce使用 onEvent?

  @override
Stream<Transition<PriceProposalEvent, PriceProposalState>> transformEvents(
Stream<PriceProposalEvent> events,
TransitionFunction<PriceProposalEvent, PriceProposalState> transitionFn,
) =>
super.transformEvents(
events.debounceTime(const Duration(milliseconds: 200)),
transitionFn,
);

最佳答案

Bloc 7.2.0 中的新功能 https://verygood.ventures/blog/whats-new-in-bloc-v7-2-0

现在它使用transformer!

import 'package:bloc/bloc.dart';
import 'package:stream_transform/stream_transform.dart';

class YourBloc extends Bloc<Event, State> {
YourBloc() : super(StateInitial()) {

on<PriceProposalEvent>(_onPriceProposalEvent,
transformer: debounce(const Duration(milliseconds: 200)));
}
}
//Debounce query requests
EventTransformer<E> debounce<E>(Duration duration) {
return (events, mapper) {
return events.debounce(duration).switchMap(mapper);
};
}

希望对您有所帮助!

关于flutter - 如何为 'onEvent' 的事件实现去抖动器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69372529/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com