[英]How to observe the value in array with RxSwift
有班有布爾的財產
class Coupon: NSObject {
var invalid: Bool = false
}
我創建一個數組[Coupon],我需要將coupon.invalid一次修改為true。當所有這些coupon.invalid == true時,我就可以處理下一個任務,如何使用RxSwift實現此邏輯?幫幫我~~
首先,使Coupon類型成為結構而不是類。
struct Coupon {
var invalid = false
}
並將您的數組嵌入變量中。
let coupons = Variable<[Coupon]>([])
coupons.value = getAllTheCoupons()
現在,您可以創建一個可觀察值,每當所有值都為true時便會發出一個值。
let allTrue = coupons.asObservable()
.map { coupons in
coupons.contains(where: { $0.invalid == false }) == false
}
.filter { $0 }
allTrue.subscribe(onNext: { _ in
print("process next task.")
}).disposed(by: bag)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.