首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在ReactiveSwift中同步组合属性

在ReactiveSwift中同步组合属性
EN

Stack Overflow用户
提问于 2019-06-27 04:43:56
回答 1查看 873关注 0票数 2

我正在考虑使用我自己的自定义signal框架将项目转换为使用ReactiveSwift,但有一个基本问题我从未想过如何在ReactiveSwift中解决:

作为一个简化的示例,假设您有两个可变属性:

let a = MutableProperty<Int>(1)
let b = MutableProperty<Int>(2)

然后,我们派生一个结合了这两个属性的属性来实现我们的逻辑:

let c = Property.combineLatest(a, b).map { a, b in
    return a + b
}

稍后,我们收到一些信息,这些信息促使我们同时更新ab的值:

a.value = 3
b.value = 4

现在的问题是,c将通知它的侦听器它具有值3 -> 5 -> 7。5完全是虚假的,并不代表有效的状态,因为我们从来不希望a等于3而b等于2的状态。

有什么办法可以解决这个问题吗?一种方法,可以抑制对Property的更新,同时将其所有依赖项更新为新状态,并且只在完成后才允许更新?

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56780610

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档