使用dva
dva是如何來的可以參考其文檔:支付寶前端應用架構的發展與選擇。我們主要說下他的使用思想,以及如何遵循我理解的最佳實踐。
dva的API其實是受elm的API啟發而來的。它主要包含以下幾個概念:
model:主要用于數據維護;
model的state:狀態數據,用于React組件里的渲染數據;
model的reducers:同步的修改state的純函數;
model的effects:異步請求數據,使用redux-saga實現,所以寫法上是Generator的形式;
model的subscriptions:用于model被添加后的鉤子函數執行;
connect:使用react-redux的connect方法,連接store與React Component;
Router:來自于react-router;
Route Component:來自于react-router,用于路由與組件的連接;
具體可以參見其API文檔:dva的幾個概念。