-
RxFeedback的核心
typealias Feedback<State, Event> = (Observable<State>) -> Observable<Event>
public static func system<State, Event>(
initialState: State,
reduce: @escaping (State, Event) -> State,
feedback: Feedback<State, Event>...
) -> Observable<State>
-
RxFeedback 的核心內(nèi)容為狀態(tài)(State)、事件(Event)、反饋循環(huán)(Feedback Loop):
- State:包含頁面中各種需要的數(shù)據(jù)铃将。我們可以用這些狀態(tài)來控制頁面內(nèi)容的顯示却妨,或者觸發(fā)另外一個事件。
- reduce :根據(jù)不同的事件盯质,對當前的狀態(tài)進行修改袁串,并返回新狀態(tài)。
- Event:用來描述所產(chǎn)生的事件呼巷。當發(fā)生某個事件時囱修,更新當前狀態(tài)。
- Feedback Loop:用來修改狀態(tài)朵逝、IO 和資源管理的蔚袍。比如我們可以將狀態(tài)輸出到 UI 頁面上,或者將 UI 事件輸入到反饋循環(huán)里面去配名。
- react:非UI的自動反饋
參考文章:Swift - RxSwift的使用詳解69(RxFeedback架構(gòu)1:安裝配置啤咽、基本用法)
Swift - RxSwift的使用詳解70(RxFeedback架構(gòu)2:一個用戶注冊樣例)
Swift - RxSwift的使用詳解71(RxFeedback架構(gòu)3:GitHub資源搜索樣例)