電子を使用して音楽プレーヤーで作業していますが、反応を試してみることにしましたが、ディレクトリツリーの作成に取り掛かっています。反応でディレクトリツリーコンポーネントを作成する
すべてのディレクトリを再帰的に取得するためにreaddirpを使用していますが、ツリーの構築方法はわかりません。アレイ全体バニラJS Iループで
D:/Music/Artist1
D:/Music/Artist1/Album1
D:/Music/Artist1/Album1/cd1
D:/Music/Artist1/Album1/cd2
D:/Music/Artist1/Album2
D:/Music/Artist2
D:/Music/Artist2/Album1
D:/Music/Artist2/Album2
:
// dir.fullPath : 'D:/Music/Artist/Album/name',
// dir.fullParentDir : 'D:/Music/Artist/Album',
// dir.path : 'Artist/Album/name',
// dir.parentDir : 'Artist/Album',
// dir.name : 'name',
ツリー構造:readdirpは、次のプロパティを持つオブジェクトの配列を作成し
第一繰り返しで私が持つ要素を作成しますid = D:/ Music/Artist1(dir.fullPath)、id = D:/ Music/(dir.fullParentDir)で要素を検索していますが、存在しないため、要素をデフォルトに追加します素子。私はID = Dと素子作成
第2の反復:/音楽/ Artist1/Album1を、IはID = Dを持つ要素を検索:/音楽/ Artist1、それは私が見つけ、それを追加する存在素子。
これは私に正しいネストを与えます。
<div id="default">
<div id="D:/Music/Artist1">
<div id="D:/Music/Artist1/Album1">
<div id="D:/Music/Artist1/Album1/cd1"></div>
<div id="D:/Music/Artist1/Album1/cd2"></div>
</div>
<div id="D:/Music/Artist1/Album2"></div>
</div>
<div id="D:/Music/Artist2">
<div id="D:/Music/Artist2/Album1"></div>
<div id="D:/Music/Artist2/Album2"></div>
</div>
</div>
私はどのように反応するのですか?
編集ここ
(https://imgur.com/a/hS1pe)readdirpによって返されるオブジェクトの配列であるが、オブジェクト1は、物体17と物体18
ネスティングがあってもよい大きくより1つのレベルの親ディレクトリは、(あります上記の例を更新しました)。
のようなルート小道具が動作しない
TreeView
コンポーネントを渡します。また、2つのthis.props.directoriesがあります、私はそれが小道具の代わりに国家であるべきだと思います。質問に多くの情報を追加しました。ループ内に反応要素を作成すると、同じループの次の反復でそれらを検索することは可能ですか?私はバニラ・ジャズと同じように。 – fbg13がその行にあります。どのようなエラーが出ていますか? –
'return
' 'プロパティ 'fullPath'が未定義です。dirは文字列であり、配列ではありません。そして私がdirだけに変更すると、エラーが表示されないうちに、デフォルトのdivだけが表示されます。 https://pastebin.com/fsAzrrfB – fbg13