前提・実現したいこと
React+Reduxの勉強でtrelloのようなTODOアプリを作成しています。
TODOアプリにはtrelloの形式のような構成にしていて、以下の3つの概念が登場します。
Board
: TODOの一番大きな分類。 プロジェクト単位くらい
Lane
: 1つのBoard
内にある、複数のTODOをまとめた単位。"これからすること", "いましていること", "終わったこと"など、Board
内のTODOを状態でまとめたりする。1つのBoard
に複数のLane
が存在する。
Card
: TODOの最小作業単位。1つのLane
に複数のCard
が存在する。
発生している問題
現在のStateの構造が適切な構造であるかがわからず、悩んでいる。
現在は、公式解説を参考にして、Stateを正規化された構造にしておりますが、
javascript
1{ 2 boards: { 3 byId: { 4 1: { 5 // Boardタイトル 6 title: "ボード1" 7 // Board1内に存在するLane IDリスト 8 lanes: [10, 20] 9 } 10 2: { 11 title: "ボード2" 12 lanes: [30, 40, 50] 13 } 14 } 15 // 全てのLaneIDリスト 16 allIds: [1, 2] 17 }, 18 lanes: { 19 byId: { 20 10: { 21 // Lane10内に存在するLane IDリスト 22 cards: [100, 200] 23 } 24 20: { 25 cards: [300, 400, 500] 26 } 27 30: { 28 cards: [ /* 略 */ ] 29 } 30 40: { 31 cards: [/* 略 */] 32 } 33 } 34 // 全てのLaneIDリスト 35 allIds: [10, 20, 30, 40, 50] 36 } 37 cards: { 38 byId: { 39 100: { 40 // TODO内容のテキスト 41 text: "TODO1" 42 } 43 200: { 44 text: "TODO2" 45 } 46 300: { 47 text: "TODO3" 48 } 49 /* 略 */ 50 } 51 // 全てのLaneIDリスト 52 allIds: [100, 200, 300, 400, 500, ...] 53 } 54}
上記の構造は、きちんと公式解説に従ったものとなっているでしょうか。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/03/03 08:13