スクリプトのお勉強

svelteのUIライブラリを使用してみる(TreeView)

投稿日:

前回の続きで、まずは、TreeViewを実現してみます。

Carbon Components Svelte

svelteのUIライブラリにCarbon Components Svelteを使用してみました。

色々あるのですが、まずはこれにしてみようかと思います。

理由としては、TreeViewをとりあえず使ってみたかったから、ということになります。

この中では、Smelteとかでもいいのですが、TreeViewがしょぼいので、とりあえず外しました。

TreeView仕様

TreeView仕様が以下です。

https://carbon-components-svelte.onrender.com/components/TreeView

準備

作ってみるまでの準備は以下です。

$ npx degit sveltejs/template treeview-svelte
$ cd treeview-svelte
### to use TypeScript run:
$ node scripts/setupTypeScript.js
$ npm install
$ npm i -D carbon-components-svelte
$ npm i -D carbon-icons-svelte

動作環境

動作環境は以下の通りです。

### WSL上
$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.2 LTS"
$ npm --version
6.14.15

テスト起動

起動方法は以下の通りです。

$ npm install
$ npm run dev

ソース

ここに置いておきました。

中心は以下です。

<TreeView
labelText="File Folder Sample"
{children}
bind:activeId
bind:selectedIds
on:select={({ detail }) => console.log("select", detail)}
on:toggle={({ detail }) => console.log("toggle", detail)}
on:focus={({ detail }) => console.log("focus", detail)}
/>

childrenが、TreeView用のデータです。

今のところはサンプルの通り実装しただけです。

画面

画面は以下のようになります。

svelteによるTreeView

終わりに

次はPython と連携してみたいと思います。

参考

  • UIライブラリの参考
    https://medium.com/mkdir-awesome/8-popular-svelte-ui-components-d2a3e43d70c3

-スクリプトのお勉強

執筆者:

関連記事

Pythonのmock.patchを使ってみる

単体テストによく使われるMockライブラリ Pythonで単体テストを行う際、実際のライブラリを使用してしまうと、実際の環境を用意しなければいけません。 例えば、データベースのテストをする際に、データ …

gradleのcommandLineでリダイレクト

gradleというビルドツールがあります。なぜかRPMを作成するのに使ってます。Ansibleも使ってるんですがね。。 それはともかく、ここの通りなのですが、例えばls -lRの出力を、プロジェクトデ …

暗号モードによる処理時間の違いを測定してみた

はじめに 前回、AESで暗号化する実装をしてみた際、知らない暗号モードが増えたなと思いました。 なので、どの暗号モードを使用すべきかの、判定材料の一つとして、代表的な暗号モードの処理速度を簡単に計って …

Pythonパッケージ管理の歴史

歴史っても、あまり過去に興味がないので、、 Pythonのパッケージ管理の歴史は、常に流動的で、そもそもからして、とてもじゃないがまとめて説明できるようなものではないです。 はっきり言って昔からよく分 …

Go言語でtarアーカイブコマンド作成

今所属している会社で1バイナリでとりあえず済ませる簡単ツールはgo言語で書くことが多いようです。 私はそれほどgo言語が好きというわけでもありませんが、勉強がてら、ディレクトリからtarアーカイブする …

google オプトアウト Click here to opt-out.