jsTreeを利用して、ブラウザにツリー表示をする
今、関わっているプロジェクトで、ツリー表示をする必要があったので、
色々と調査しているとわかった事を備忘録として残す。
今時のJavaScriptのライブラリでツリー表示できるものは多々あるが、
[jquery.treeview.js]は、描画に時間がかかるので、大量ツリー情報には不向き。
色々試した結果、JSONを扱えなかったり、
特定のフォルダだけを広げる事などができなかったりと、
色々と使い勝手が悪く、却下。
そこで、同じくjQueryのプラグイン[jsTree]を導入する。(https://www.jstree.com/)
他にもいろいろと候補はあったのだが、選択したキッカケは
ランキングサイト(https://qiita.com/alingogo/items/b49d48f1b024f6022a85)
を鵜呑みにして1位のものを導入してみた。
色々と試したが、とにかく大量データでも軽い。
結局UL-LIの要素を作ってくれるのだが、
ツリー展開時に、裏で持つJSONの情報から都度DOMを生成しているっぽいので、
初期表示時の描画がとにかく軽い。(1階層目しかツリーにしていないから)
また、様々な便利ツールが充実しており、
ピンポイントにツリーノードを選択させる事も、
ツリー名称でツリーを検索していく事も可能。
もっと他のライブラリもあると思うが、今の業務要件については、
jsTreeで十分なのでこちらを導入する。
参考にしたサイト:http://westplain.sakuraweb.com/translate/jstree/index.cgi