[英]Cancel subscription within sink in SwiftUI Combine
您的訂閱必須是全球性的,否則它會立即消失。
class MySecondClass {
...
var myGlobalSubscription: AnyCancellable?
func subscribe() {
myGlobalSubscription = myPublisher
.sink(receiveValue: { [weak self] value in
...
self?.myGlobalSubscription?.cancel()
})
}
}
或者,您可以使用發布者的.drop()
或.prefix()
函數來跳過一定數量的上游值。 或者您可以使用.filter()
函數來過濾上游值。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.