個人意見
和你們討論一下幾個問題
1. 項目裏面沒有用class規定的請求數據結構,調試數據的時候沒法從前端獲取請求的數據格式,要看後端接口,增長了調試的難度。咱們之前會用immutable Record去作這個事情
2.項目裏的Navigation大都是從祖先組件傳遞到子組件裏面去的,我以爲也許採用connect注入的方式好一些,比較符合AOP面向切面的思想,比較不容易和當前的代碼耦合
備註:好比我如今接手了一個任務,我須要知道一個請求的數據結構,可是我沒有直接獲取的方法,由於前端沒有定義這個數據結構的東西,又由於代碼裏沒法提供穩定可維護的接口文檔,因此我只能依賴於後端,而由於redux的龐大的結構,須要較多時間才能排查出字段的相關信息
A的意見
- 項目中有seamless-immutable, 不知道有沒有你說的immutable Record;寫代碼不嫌麻煩,就多定義type了
- connect的方式是可使用的,並無限制說不能使用 withNavigation
B的意見
redux推薦用簡單的對象和數據來描述應用狀態,因此通常redux store中不會有class,全面平面對象以及數組等數據類型。可是也能夠用class來定義一些抽象數據類型,減小一些冗餘代碼,但最終存儲到store,通常都是都是對象以及數組。再者redux通常會同步到storage中,storage中的數據必須序列化。若是是class,hydrate的時候,又要反序列化。成本有點高。class通常也只是用來封裝一些通用邏輯,嚴格來說,跟redux無關,能夠搞。真正到store仍是plain object前端