将多个操作绑定到单个控件事件时,绑定顺序是不是重要?

Posted

技术标签:

【中文标题】将多个操作绑定到单个控件事件时,绑定顺序是不是重要?【英文标题】:Does binding order matter when binding multiple operations to a single control event?将多个操作绑定到单个控件事件时,绑定顺序是否重要? 【发布时间】:2019-06-13 21:38:55 【问题描述】:

将两个特定操作绑定到一个按钮点击时,执行顺序是否遵循绑定顺序?

例如,在下面的代码中,有没有办法告诉首先执行什么?

self.resetButton.rx.tap.bind(to: viewModel!.resetPasswordButtonObserver).disposed(by: disposeBag)

self.resetButton.rx.tap.bind [weak self] in
    self?.loader.lock()
.disposed(by: disposeBag)

在我的代码中,viewModel 在执行 self?.loader.lock() 块之前调用 API 并执行重置操作,这可能会导致快速连接出现问题。

【问题讨论】:

【参考方案1】:

除非您更改执行代码的线程,否则它将按照您编写的顺序执行。

【讨论】:

所以执行顺序服从绑定顺序,除非操作是同时执行的?出于某种原因,我认为所有绑定都是同时执行的。感谢您的回答,我会将其标记为已接受。 RxSwift 默认是同步的。所有工作都在调用订阅的那一刻执行。

以上是关于将多个操作绑定到单个控件事件时,绑定顺序是不是重要?的主要内容,如果未能解决你的问题,请参考以下文章

如何将单个 IOptions POCO 交叉绑定到多个配置提供程序?

一个DOM元素绑定多个事件时,先执行冒泡还是捕获

[Vue]组件——将控件的原生事件绑定到组件

将多个类的数据绑定到单个列表视图/xamarin 表单

无法成功将 IsVisible 动态绑定到静态字段

一个DOM元素绑定多个事件时,先执行冒泡还是捕获