iOS RXSwift 只让第一个事件通过的去抖动等效于什么?
iOS RXSwift What is the equivalent of debounce which lets through first event only?
我有一个发送网络请求的按钮。我想忽略此按钮内的双击。我试过 .throttle
,但似乎没有用。所以我正在尝试 .debounce
- 这确实忽略了重复的点击,但只允许通过最后一个事件。
我想要的是:在第一次点击时,发送网络请求,在 0.33 秒内忽略后续点击。
哪个 RXSwift 操作员会帮助我在一段时间内完成一个事件并禁用后续事件 window?
let buttonPressObservable = button.rx.tap.asObservable()
buttonPressObservable.debounce(0.33, scheduler: MainScheduler.instance)
.map{/*do stuff*/}
在库的 4.2 版中,throttle
有一个参数 latest
,默认设置为 true
。如果将其设置为 false,我认为它会给你想要的行为。
我有一个发送网络请求的按钮。我想忽略此按钮内的双击。我试过 .throttle
,但似乎没有用。所以我正在尝试 .debounce
- 这确实忽略了重复的点击,但只允许通过最后一个事件。
我想要的是:在第一次点击时,发送网络请求,在 0.33 秒内忽略后续点击。
哪个 RXSwift 操作员会帮助我在一段时间内完成一个事件并禁用后续事件 window?
let buttonPressObservable = button.rx.tap.asObservable()
buttonPressObservable.debounce(0.33, scheduler: MainScheduler.instance)
.map{/*do stuff*/}
在库的 4.2 版中,throttle
有一个参数 latest
,默认设置为 true
。如果将其设置为 false,我认为它会给你想要的行为。