2016-09-16 63 views
2

enter image description here用ngrx實現多記錄編輯

我應該如何設計用於多記錄編輯的redux體系結構?

目前我在每個標籤組件中存儲錯誤。在場模糊我做驗證和更新this.errors。如果沒有錯誤,我會進行API調用,並返回錯誤我更新錯誤。

我認爲save({tag})應該處理驗證/保存/更新/服務器錯誤,但是我對減速器應該如何在商店中「查找」標籤感到困惑。應該通過索引還是編號?如果通過身份證,我認爲更好,那麼我將如何知道對象是否被堅持? (我已經在商店裏既保存也不保存對象)

可以分享一些想法如何處理它?

回答

0

也許混合持久和未持久的對象是過度複雜的狀態管理和「添加標籤」應允許一次只加入一個對象與自己的狀態/減速器「newTag」。這將更接近常規的CRUD工作流程,我們爲索引/新建/編輯提供單獨的頁面。

唯一的問題是如何管理錯誤狀態。我想將狀態存儲錯誤的原因是用戶在其他頁面上刪除類別並使某些標記無效時使用的用例。然而,這可以用不同的方式解決:如果用戶刪除類別,我們刪除所有與它相關的標籤。如果這不是你想要的(可以說你不想刪除Post,因爲類別已被刪除),那麼我可以再次構建一個名爲「postsWithoutCategory」的專用狀態/ reducer,並根據它通知用戶有些帖子缺少類別。然後,整個「標籤」狀態/縮減器變成常規的CRUD狀態/縮減器,並且在窗體組件(通過這個錯誤或者通過Angular2反應形式驗證)之外管理錯誤或者減少錯誤。