RxSwift -- 變換
如果我們想對獲取到的事件進行轉換, 我們就需要變換, 例如將一個數字變為字元
map
和陣列的 map 類似,可以將型別進行轉換
如
Observable.from([1,2,3,4,5])
.map{"num is :\($0)"}
.subscribe { (event) in
self.print(event)
}.disposed(by: disposeBag)
flatMap
flatMap 可以將一個一個可觀察者物件轉換為另一個, 例如, 你在某種情況下返回失敗你可以這樣
Observable.of(1,2,3,4,5)
.flatMap{ $0 == 3 ? Observable<Int>.error(RxError.unknown) : Observable<Int>.just($0) }
.subscribe { (event) in
self.print(event)
}.disposed(by: disposeBag)
scan
scan 類似於序列的 reduce 操作, 不同的是, 他會把每次的值都傳送出來
Observable.of(1,2,3,4,5)
.scan(0) { $0 + $1 }
.subscribe { (event) in
self.print(event)
}.disposed(by: disposeBag)
輸出 1, 3, 6, 10, 15
相關文章
- RxSwift 之變換操作Swift
- RxSwift 01 ReactiveCocoa 與 RxSwiftSwiftReact
- OpenGL模型檢視變換、投影變換、視口變換模型
- RxSwift - ObservableSwift
- RxSwift進階(一)-RxSwift的初體驗Swift
- RxSwift 之 ObservableSwift
- MVVM+RxSwiftMVVMSwift
- RxSwift學習Swift
- RxSwift小DemoSwift
- RxSwift 基礎Swift
- RxSwift 之 SubjectSwift
- 【RxSwift 實踐系列 1/3】為什麼使用RxSwiftSwift
- Hough變換
- 傅立葉變換
- 仿射變換及其變換矩陣的理解矩陣
- 小波變換與傅立葉變換的區別
- 【DWT筆記】傅立葉變換與小波變換筆記
- OpenGL中的座標變換、矩陣變換矩陣
- 離散傅立葉變換(DFT)和快速傅立葉變換(FFT)FFT
- OpenCV計算機視覺學習(3)——影像灰度線性變換與非線性變換(對數變換,伽馬變換)OpenCV計算機視覺
- 快速傅立葉變換
- 【OpenCV】影像變換(四-2)霍夫變換圓檢測OpenCV
- What’s new in RxSwift 5Swift
- RxSwift 之過濾操作Swift
- RxSwift 案例學習(一)Swift
- 比較RAC和RxSwiftSwift
- RxSwift學習筆記Swift筆記
- RxSwift (二) Working with SubjectsSwift
- 30天學RxSwift——ObserverSwiftServer
- 灰度變換函式:對數及對比度拉伸變換函式
- 【OpenCV-Python】:影像的傅立葉變換與逆傅立葉變換OpenCVPython
- 【OpenCV】影像變換(四-1)-霍夫變換線段檢測OpenCV
- SVG animateTransform變換動畫SVGORM動畫
- 【八】查詢變換
- pose座標變換
- 離散傅立葉變換
- 複變函式與積分變換函式
- RXSwift原始碼淺析(二)Swift原始碼