Vueは要素ツリーコントロールを通じてツリーテーブルを実装します

Vueは要素ツリーコントロールを通じてツリーテーブルを実装します

Vueでは、要素ツリーコントロールを使用してツリーテーブルの効果を実現します。

インデントを使用して木のような効果を実現します

実装効果図

レンダリング

依存関係をインストールする

$ npm install element-plus --save

エレメント公式サイト

カスタムツリーコントロール

レンダリング

ダイアグラム内のコントロールの分布を分析します。各パラメータには固定widthがあります。 width値を揃えるために使用されます。

このコードは主にrenderContent関数を使用してツリーコントロールをカスタマイズします。

<テンプレート>
    <div class="mytree">
          <el-tree
              :data="ツリーデータ"
              :props="デフォルトプロパティ"
              @node-click="ハンドルNodeClick"
              インデント="0"
              :render-content="レンダリングコンテンツ"
          </el-tree>
        </div>
</テンプレート>
<script lang="ts">
'vue' から {defineComponent, ref} をインポートします。
エクスポートデフォルトdefineComponent({
    コンポーネント: {},
    データ() {
        戻る {
              ツリーデータ: [
        {
          // タイプ:1,
          ラベル: 'notice-id1',
                  子供たち: [
                        {
                          ラベル: ['衛星名コード', 'ZOHREH-2'],
                        },
                        {
                          ラベル: ['組織', 'IRN'],
                        },
                        {
                          ラベル: ['周波数範囲', '10950-1450'],
                        },
                        {
                          ラベル: '[上段] 梁名',
                          子供たち: [
                              {
                                  ラベル:['名前','RS49'],
                              },
                             {
                                  ラベル:['freq_min','10950'],
                              },
                             {
                                  ラベル:['freq_max','14500'],
                              },
                              {
                                  ラベル:[]'グループ('+'3'+')','']
                                  子供たち:[
                                     {
                                        ラベル:['10600361','10950','11200','0']
                                     },
                                    {
                                        ラベル:['10600361','10950','11200','0']
                                     },
                                    {
                                        ラベル:['10600361','10950','11200','0']
                                     }
                                  ]
                              }
                      ]
                    },
                  ]、
                },
              ]、
            デフォルトプロパティ: {
            子供: 「子供達」
            ラベル: 'ラベル',
          },
        }
    },
    方法:{
    // カスタムツリーコントロール関数ノードは各ノードを表します renderContent(h,{node,data,store}){
        //div はツリー コントロールの行を表し、div には 3 つの span タグが含まれます // ノードのラベル配列の数を決定し、3 項演算によってクラスを選択します
        // ツリーコントロールの配置を制御するクラスを設定します return h('div',[
          h('span', {class:node.label.length === 2 ? 'nodeStyle':'groupStyle'},node.label[0]),
          h('span', {class:'groupStyle'},node.label[1]),
          h('span',{class:node.label.length === 2 ? 'nodeStyle':'groupStyle'},node.label.length === 2 ? '':node.label[2])
          ]);
    },
    }
})
</スクリプト>
<style lang="scss" スコープ>
.nodeStyle{
  幅:110ピクセル;
  表示:インラインブロック;
  テキスト配置:左;
}
.groupStyle{
  幅:150ピクセル;
  表示:インラインブロック;
  テキスト配置:左;
}
</スタイル>

その他の実装

要素ツリーコントロールに点線を追加する

Element-uiはツリーコントロールノードにアイコンを追加する機能を実装します

要約する

ツリーテーブルは主に、要素のツリーコントロールのカスタム関数renderContentとCSSを組み合わせて実装されます。

この記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。

以下もご興味があるかもしれません:
  • Vue要素ツリーコントロールに点線を追加する詳細な説明
  • Vue Element-ui テーブルはツリー構造テーブルを実現します
  • Vue コンポーネント ライブラリ ElementUI はテーブル読み込みツリー データのチュートリアルを実装します
  • Vue+element UI でツリーテーブルを実現
  • Vue+Element UI ツリー コントロールはドロップダウン機能メニュー (ツリー + ドロップダウン + 入力) を統合します。
  • Vue Element-ui はツリーコントロールノードを実装し、アイコンを追加します。詳細な説明

<<:  MySQL シリーズ 4 SQL 構文

>>:  display または visibility を通じて HTML 要素を表示または非表示にする

推薦する

Nginx 転送ソケットポート設定の詳細な説明

Nginx によるソケット ポート転送の一般的なシナリオ: オンライン学習アプリケーションでは、通常...

Tomcat サーバー入門の超詳細なチュートリアル

目次1. Tomcat の概念–1、サーバー–2、ウェブサーバー–3、Tomcatサーバー次にTom...

ウェブデザインの初心者に役立つ学習教材をいくつかお勧めします

勉強中に読んだ本についてもよく聞かれます。以下は初心者におすすめの本です(私が勉強中に読んだ本です。...

MySQLの主キーとユニークキーの重複挿入の解決策の詳細な説明

目次解決: 1. 無視する2. 交換する3. 重複キーの更新についてデータを挿入するときに、重複した...

JavaScript でウェブ プレーヤーを実装する

今日は、JavaScript を使用して Web ページ上にプレーヤーを作成する方法を紹介します。誰...

Kali Linux システムのバージョンを確認する方法

1. Kali Linuxシステムのバージョンを確認するコマンド: cat /etc/issue 2...

Vueリストデータを削除した後、ページを自動的に更新する方法と更新方法の詳細な説明

問題の説明:フロントエンドがデータの一部を削除したり、新しいデータを追加したりすると、バックエンドの...

エレガントなJSコードの書き方

目次変数意味があり発音しやすい変数名を使用する同じ型の変数には同じ語彙を使用する検索可能な名前を使用...

コンピュータが予期せずシャットダウンした後、VMware で Linux がインターネットに接続できない問題の解決策

問題の説明: Linux システムのネットワーク カード ファイル /etc/sysconfig/n...

Windows 10 での MySQL 8.0.11 圧縮バージョンのインストール チュートリアル

この記事では、MySQL 8.0.11圧縮版のインストールチュートリアルを参考までに紹介します。具体...

TomcatとJDKのバージョンの対応と各Tomcatバージョンの機能

Apache Tomcat は、Java Servlet および Java Server Pages...

MySQL レプリケーションの詳細な説明と簡単な例

MySQL レプリケーションの詳細な説明と簡単な例マスタースレーブレプリケーション技術は、MySQL...

Vue 組み込みコンポーネントのキープアライブでの LRU アルゴリズムの使用

目次Vue の keep-alive 組み込みコンポーネントの使用でもこのアルゴリズムが使用されます...

MySQLパーティションテーブルは月別に分類されています

目次テーブルを作成するデータベース ファイルを表示します。入れるクエリ消去補足:Mysqlは月テーブ...

HTML テーブルタグチュートリアル (44): テーブルヘッダータグ

<br />ソース コード内で表の構造を明確に区別するために、HTML 言語では、表のヘ...