Vue+el-tableはセルの結合を実現します

Vue+el-tableはセルの結合を実現します

この記事の例では、参考までにセルの結合を実現するためのel-tableの具体的なコードを共有しています。具体的な内容は次のとおりです。

el-table セルの結合 (vue+element)

- まずel-tableに以下を入力します: span-method="arraySpanMethod"

<el-table :header-cell-style="{background:'#eef1f6',color:'#606266'}" :data="merchantList" border :span-method="arraySpanMethod">
          <el-table-column align="center" prop="provinceName" label="州"> </el-table-column>
          <el-table-column align="center" label="エージェント名">
            <テンプレートスコープ="スコープ">
              <span>{{scope.row.parentMerchantName == scope.row.merchantName ? '---' : scope.row.parentMerchantName}}</span>
            </テンプレート>
          </el-table-column>
          <el-table-column align="center" prop="cityName" label="市"> </el-table-column>
          <el-table-column align="center" prop="countryName" label="区"> </el-table-column>
          <el-table-column align="center" prop="merchantName" label="店铺"> </el-table-column>
</el-table>

メソッドを methods に記述します。

//セルを結合する arraySpanMethod ({ row, column, rowIndex, columnIndex }) {
      if (columnIndex === 0){//最初の列、provinceのマージメソッド const _row_1 = this.provinceArr[rowIndex];
        const _col_1 = _row_1 > 0 ? 1 : 0; // 結合されている場合、_row=0 なので、この列はキャンセルする必要があります return {
          行範囲: _row_1,
          列範囲: _col_1
        }
      } 
    },
    // 初期化merageInit() {
      this.provinceArr = []
      this.provincePos = 0
    },
    //配列をマージする方法 merge() {
      this.merageInit()
      (var i = 0; i < this.merchantList.length; i++) {
        (i === 0)の場合{
          //最初の行が存在する必要があります this.provinceArr.push(1)
          this.provincePos = 0
        } それ以外 {
          // 現在の要素が前の要素と同じかどうかを判断します。this.provincePos は、provinceArr コンテンツのシリアル番号です。//province if (this.merchantList[i].provinceName === this.merchantList[i - 1].provinceName) {
            this.provinceArr[this.provincePos] += 1
            this.provinceArr.push(0)
          } それ以外 {
            this.provinceArr.push(1)
            this.provincePos = i
          }
        }
      }
    },

結果:

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • Vue はセルを動的に結合し、小計を追加する関数の例
  • Vueセルの複数列を結合する実装
  • Antd vue テーブルは行間でセルを結合し、コンテンツ インスタンスをカスタマイズします。
  • Vueでは、element-uiテーブルは上行と下行の同じデータセルを結合します

<<:  MySQLメモリストレージエンジンに関する知識

>>:  MySQLにおけるMTRの概念

推薦する

UbuntuはPythonスクリプトのサンプルコードを定期的に実行する

オリジナルリンク: https://vien.tech/article/157序文この記事では、Ub...

Linux アカウントのパスワードを変更する詳細な例

個人アカウントのパスワードを変更する一般ユーザーが個人アカウントのパスワードを変更する場合は、他のコ...

HTML タグのリストと使用方法

HTMLタグのリストマークタイプ名前または意味効果述べるファイルのタグ付け<HTML> ...

MySQL 5.7.18 インストーラーのインストール ダウンロード グラフィック チュートリアル

この記事では、MySQL 5.7.18インストーラーの詳細なインストールチュートリアルを参考までに記...

Kali Linux Vmware 仮想マシンのインストール (図とテキスト)

準備: 1. VMwareワークステーションソフトウェアをインストールする2. Kali Linux...

docker pull imageエラーの問題を解決する

説明する: Windows 10 に VM をインストールし、VM で Docker を実行し、Do...

Nginx リバース プロキシでセッション永続性を実装する 2 つの方法の詳細な説明

1. ip_hash: ip_hash は、送信元アドレス ハッシュ アルゴリズムを使用して、サーバ...

仮想マシンを作成し、VMware に Redhat Linux オペレーティング システムをインストールする (グラフィック チュートリアル)

VMware で仮想マシンを作成し、Redhat Linux オペレーティング システムをインスト...

iviewは動的なフォームとカスタム検証期間の重複を実装します

フォーム項目を動的に追加するiview の動的なフォーム追加は非常に簡単です。フォーム項目を配列に設...

Docker コンテナで DockerFile を使用して複数の Tomcat サービスをデプロイする手順

1. [admin@JD ~]$ cd opt #ルートディレクトリにoptと入力2. [admin...

Web ベースの電子メール コンテンツの HTML フォーマット標準の概要

1. ページ要件1) 標準のヘッダーとフッターを使用するXML/HTML コードコンテンツをクリップ...

0.1秒の価値!フロントエンドのウェブページの高速化の問題について簡単に説明します

私が現在の仕事の面接を受けたとき、リーダーが真剣にこう言っていたのを覚えています。「今の世の中はイン...

CSS は Apple のスムーズなスイッチ ボタン効果を模倣します

目次1. コード分析2. ソースコードソースコード1. コード分析1.1 HTMLコード分析 <...

React で複数の setStates が何回呼び出されるのでしょうか?

目次1. 2 つの setState を何回呼び出すのですか? 2. 2 つの setState の...

CSSはコンテンツの高さが足りない場合にフッターを自動的に下部に固定します

UI カットのプロセスでは、ページはヘッダー、コンテンツ、フッターの 3 つの部分で構成されることが...