1、代碼文件的組織結構函數
相比MVC的「按角色組織」風格,React和Redux應用採用的是「按功能組織」風格。直接看下圖,對比直觀一些spa
component表示展現組件,container表示容器組件設計
按角色組織 按功能組織component
2、模塊接口對象
在React和Redux配合的應用中,模塊指的是React和Redux這一個總體,這個總體應遵照「低耦合高聚合」的特色blog
模塊與模塊之間交互,應該有指定的接口來進行,避免內部之間產生直接聯繫,咱們讓每一個模塊的index.js文件來擔當接口工做 接口
支持 應該避免(直接訪問模塊內部了)容器
3、狀態樹(store)設計im
設計原則:d3
一、一個模塊控制一個狀態節點
體如今每一個模塊都有本身的reducer,reducer之間對狀態樹的修改是互斥的,即各自改各自對應的狀態樹節點
(在createStore中,只能放一個reducer,經過combineReducer函數,將多個reduce以對象形式做爲參數傳入,合併爲一個reducer)
讀取是對任何模塊都開放的,任何模塊均可以讀取狀態樹上全部的節點
二、避免數據冗餘
三、樹形結構扁平