Publisher:發布者,負責發送數據。
Publisher 發布一系列值或完成事件。它可以是多種類型的數據源,例如專題數據、一連串事件、或者網絡請求的結果。
常用的Publisher包括 Just, Future, PassthroughSubject, 和 CurrentValueSubject。
例如,Just
Publisher 可以創建一個單個值的Publisher:
let publisher = Just("Hello, Combine!")
Subscriber:訂閱者,負責接收和處理數據。
sink
和 assign
,用於簡化常見任務。sink
方法來創建:
let subscriber = publisher.sink { value in
print(value)
}
Operators:運算符,用於轉換和操作數據流。
map
, filter
, combineLatest
, merge
, flatMap
等。map
運算符來轉換Publisher數據:
let transformedPublisher = publisher.map { value in
return value.uppercased()
}