Closed Yuisei-Maruyama closed 2 years ago
再起的にレンダリングすることによって、コードのリファクタリングを行う。
また、ツリーに表示するコンテンツは外部ファイルに移動させる。
(イメージ)
const DocumentListTree: React.FC<Props> = () => {
const documentListData = // 外部ファイルから取得
const renderTree = (nodesList: DocumentItem[]) =>
nodesList.map((nodes) => {
return (
<TreeItem key={nodes.id} nodeId={nodes.id} label={nodes.label} onClick={nodes.onClick}>
{Array.isArray(nodes.children) ? nodes.children.map((node) => renderTree([node])) : null}
</TreeItem>
)
})
return (
<TreeView
>
{renderTree(documentListData)}
</TreeView>
)
}
現在のDocumentTreeのコードは下記の状態になっている。
下記の形である場合に、2点の懸念点が挙がった。
(一部抜粋)
このまま割れ窓を放置するのは、今後の要素を追加する際の重荷になると考えたので、改善を行う!