2015-09-07 54 views
2

我是新手,反應和reduxRedux:數據源實現

問題:在redux中實現「datasource」(類似於kendo-ui datasource)的最佳方式是什麼?我已經嘗試將所有我的小部件數據源存儲在一個地方(我創建了datasource reducer),並將數據源「綁定」到它的小部件(如表格小部件,列表視圖,組合框等)。數據源必須具有自己的api(如addFilter,addSort,getFiltered等),並且也存儲應用的過濾器和數據。

我想將所有數據源存儲在redux存儲中(這就是爲什麼我需要創建數據源並在創建小部件之前調度它的創建)。

問題是,當我創建react-redux連接器到我的「智能」小部件的容器組件我需要發送我的數據源與道具,但在此刻datasource不會創建。

如果我發送空初始數據源(不派遣它的創建和數據填充),然後調度,並填充數據給它componentDidMount - 叫了兩聲我的窗口小部件的渲染功能

我想我需要一些「包裝的「功能,但現在我不知道該怎麼做。

也許有一些如何實現「數據源功能」的例子?

回答

5

只讓渲染被調用兩次。在反應區域做正確的事情。

東西已經改變。讓我們重新渲染,讓差異引擎做它的事情。

您需要完全接受action-> reducer-> smart-component dichotomy。

3

數據源在Redux中看起來像一個錯誤的抽象。你不想混淆檢索狀態樹(選擇器)中的狀態,獲取它(動作創建者)和描述突變(reducer)。如果您希望獲得類似數據源的抽象,則不需要Redux。

+0

與這個問題沒有直接關係,但是如果你來這裏想知道react-native ListViewDataSource https://github.com/rackt/redux/issues/683 – luqmaan