-
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 的核心內容為狀態(tài)(State)、事件(Event)、反饋循環(huán)(Feedback Loop):
- State:包含頁面中各種需要的數據。我們可以用這些狀態(tài)來控制頁面內容的顯示,或者觸發(fā)另外一個事件。
- reduce :根據不同的事件,對當前的狀態(tài)進行修改,并返回新狀態(tài)。
- Event:用來描述所產生的事件。當發(fā)生某個事件時,更新當前狀態(tài)。
- Feedback Loop:用來修改狀態(tài)、IO 和資源管理的。比如我們可以將狀態(tài)輸出到 UI 頁面上,或者將 UI 事件輸入到反饋循環(huán)里面去。
- react:非UI的自動反饋
參考文章:Swift - RxSwift的使用詳解69(RxFeedback架構1:安裝配置、基本用法)
Swift - RxSwift的使用詳解70(RxFeedback架構2:一個用戶注冊樣例)
Swift - RxSwift的使用詳解71(RxFeedback架構3:GitHub資源搜索樣例)