本帖最後由 hihihi123hk 於 2019-9-26 09:39 編輯
咁我都睇下 MobX 先,不過你所講用 Redux 既設計問題,MobX 上會冇咩?
如果我好多個 components ...
fx360bx 發表於 2019-9-26 09:18 
Redux: Single Giant Observable
MobX: Fragmented Observable
正確咁用 MobX 你會有好多個 "Store",將啲責任天生分得好清楚 更加直觀易管理
當然,誤用嘅人一定多過正確咁用,始終 Reactive Data Stream 呢個概念要花一段時間消化,再訓練自己點用
例如,MobX 我 global 有個 ApplicationContext 拎住個 AuthenticatedUser(Observable),咁我下游可以 Depends on User 再有個 Store, 例如 MenuStore
Menu UI 有需要出 username, 咁喺 MenuStore 就可以做個 Computed(derived) state, 每當任何地方改咗 Global User,呢度都自動 Derive 再自動 Update UI
@computed
username() {
return ctx.user.username
}
Menu UI 有 Logout 制,咁喺 MenuStore 就可以做個 Logout Action
@action
logout() {
ctx.logout()
}
因為 fragmented Store 關係,係 MobX 世界,加 fields 加 Action 都係好針對性,唔會下下撩 Global
via HKEPC IR Extreme 4.2.3 - iOS(4.0.2) |