Vue要素ツリーコントロールに点線を追加する詳細な説明

Vue要素ツリーコントロールに点線を追加する詳細な説明

1. 成果を達成する

レンダリング

2. 実装コード

ツリーコントロールへの点線の追加は主にCSSの制御によって実現され、ツリーコントロールのインデント数は0のみであるため、class="mytree"とします。

   <div class="mytree">
          <!--インデントは 0 のみにできます-->
          <el-tree
              :data="ツリーデータ"
              :props="デフォルトプロパティ"
              @node-click="ハンドルNodeClick"
              インデント="0"
              :render-content="レンダリングコンテンツ"
          </el-tree>
   </div>

CSSは次のコードに設定され、スタイル浸透のために::v-deep使用されています。

<style lang="scss" スコープ>
::v-deep .mytree {
  .el-tree > .el-tree-node:after {
    上境界線: なし;
  }
  .el-tree-node {
    位置: 相対的;
    左パディング: 16px;
  }
  //ノード間に隙間があるので、展開ボタンを非表示にします。隙間が問題ないと思われる場合は削除できます。el-tree-node__expand-icon.is-leaf{
    表示: なし;
  }
  .el-tree-node__children {
    左パディング: 16px;
  }
  .el-tree-node :最後の子:前 {
    高さ: 38px;
  }
  .el-tree > .el-tree-node:before {
    左境界線: なし;
  }
  .el-tree > .el-tree-node:after {
    上境界線: なし;
  }
  .el-tree-node:before {
    コンテンツ: "";
    左: -4px;
    位置: 絶対;
    右: 自動;
    境界線の幅: 1px;
  }
  .el-tree-node:after {
    コンテンツ: "";
    左: -4px;
    位置: 絶対;
    右: 自動;
    境界線の幅: 1px;
  }
  .el-tree-node:before {
    左境界線: 1px 破線 #4386c6;
    下: 0px;
    高さ: 100%;
    上: -26px;
    幅: 1px;
  }
  .el-tree-node:after {
    上境界線: 1px 破線 #4386c6;
    高さ: 20px;
    上: 12px;
    幅: 24px;
  }
}
</スタイル>

3. その他の実装

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

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

要約する

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

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

<<:  HTML で特定のテキストを非表示にするにはどうすればよいでしょうか?

>>:  DockerでPrometheusをインストールする詳細なチュートリアル

推薦する

Vue の計算プロパティとプロパティリスニングについての簡単な説明

目次1. 計算プロパティ構文: 1. 省略形:文法: 2. 文章を完成させる: 2. モニタリング(...

異なるページ間のJavaScriptデータ転送(URLパラメータ取得)

Web ページでは、あるページに情報を入力すると、別のページにジャンプし、入力した情報が別のページ...

開発者とオペレーターが注目すべき Linux デバッグ ツール [推奨]

システム パフォーマンスの専門家である Brendan D. Gregg 氏は、LinuxCon N...

証明書を使用してリモート Docker サーバーに接続する方法

目次1. スクリプトを使用してDockerのTLSを暗号化する2. Dockerの設定を変更してリモ...

MySQL に IP アドレスを効果的に保存する方法と、文字列 IP と数値を変換する方法の詳細な説明

High Performance MySQL バージョン 3 (セクション 4.1.7) を見ると、...

Docker と Intellij IDEA の融合により、Java 開発の生産性が 10 倍向上

目次1. 開発前の準備2. 新しいプロジェクトIdea は Java 開発のための強力なツールであり...

Nginx の負荷分散構成、ダウンタイム発生時の自動切り替えモード

厳密に言えば、nginx には負荷分散バックエンド ノードのヘルス チェック機能はありませんが、デフ...

ウェブ標準学習リソースの素晴らしいコレクション

これらの仕様は、下位互換性のあるドキュメントを Web 上で公開し、できるだけ幅広いユーザーがアクセ...

Vue イメージ ドラッグ アンド ドロップ ズーム コンポーネントの使用方法の詳細な説明

Vueイメージドラッグアンドドロップズームコンポーネントの具体的な使い方は参考までに。具体的な内容は...

Linux で nginx を起動および再起動する方法

Nginx (エンジン x) は、IMAP/POP3/SMTP サービスも提供する高性能 HTTP ...

Vueでミックスインを使用する方法

目次序文使い方要約する序文Vue にはコードの再利用に使われる mixins という設定項目がありま...

HTMLでのフォーム送信の実装

フォーム送信コード1. ソースコード分析 <!DOCTYPE html> <htm...

Linux にバイナリ MySQL をインストールして MySQL パスワードをクラックする方法

1. システムに必要な libaio ソフトウェアがインストールされていることを確認します。インスト...

Linux で mysql-8.0.20 をインストールするための詳細なチュートリアル

** Linuxにmysql-8.0.20をインストールする**環境の紹介オペレーティングシステム:...

PrometheusとGrafanaを使用したMySQLサーバーのパフォーマンス監視の詳細な説明

概要Prometheus は、HTTP プロトコルを介してリモート マシンからデータを収集し、ローカ...