この記事の例では、el-tableを使用して列と行を動的にマージするVueの具体的なコードを参考までに共有しています。具体的な内容は次のとおりです。 数日前にプロジェクトでフォームのマージが必要になったので、将来使用するためにここに記録しました。 まず、element-ui の el-table を使用します。ドキュメントでは、行または列を結合する span-method メソッドが提供されています。詳しくない場合は、element ドキュメントのアドレスを確認してください。ただし、ドキュメントで提供されている例は非常に単純であり、複雑なページのニーズを満たすことができないため、データを処理する必要があります。 次のコード: 行と列のリストデータを取得します(データ){ 自分自身 = this とします。 自己の行と列 = []; 自己.rowRoomColumn = []; (var i = 0; i < データ長さ; i++) { (i === 0)の場合{ // 最初のレコードの場合(つまり、インデックスが0の場合)、配列に1を追加します 行と列をプッシュします(1); 自己位置 = 0; 自己.rowRoomColumn.push(1); 自己.posT = 0; } それ以外 { //data[i].typeDescはインターフェースから読み取ったフィールド情報です。以下も同様です。if (data[i].typeDesc === data[i - 1].typeDesc) { // typeDescが等しい場合は0を追加してプッシュします 自己.行と列[自己.位置] += 1 自己.行と列.プッシュ(0) (データ[i].areaDesc === データ[i - 1].areaDesc)の場合{ // areaDescが等しい場合は0を追加してプッシュします self.rowRoomColumn[self.posT] += 1 自己.rowRoomColumn.push(0) } それ以外 { 自己.rowRoomColumn.push(1) 自己.posT = i } } それ以外 { // 等しくない push 1 自己.行と列.プッシュ(1) 自己位置 = i; 自己.rowRoomColumn.push(1) 自己.posT = i } } } }, 上記のコードはデータを整理するためのものです。コメントは非常に明確です。誰でも理解できると思います。本当に理解できない場合は、印刷して見てください。 データを処理した後、上記の span メソッドが使用されます。図に示すように: objectSpanMethod メソッドは次のとおりです。 オブジェクトスパンメソッド({ 行、列、行インデックス、列インデックス }) { 自分 = これ 列インデックス === 1 の場合 { (self.rowAndColumn[rowIndex])の場合{ rowNum = self.rowAndColumn[rowIndex]とします。 戻る { 行範囲: 行番号、 列範囲: rowNum > 0 ? 1 : 0 } } 戻る { 行範囲: 0, 列幅: 0 } } 列インデックス === 2 の場合 (self.rowRoomColumn[rowIndex])の場合{ roomNum = self.rowRoomColumn[rowIndex]とします。 戻る { 行スパン: 部屋番号、 列範囲: 部屋番号 > 0 ? 1 : 0 } } 戻る { 行範囲: 0, 列幅: 0 } } }, 完了です。効果画像を見てみましょう この方法を使用する場合、バックエンドはデータを送信する前に並べ替える必要があることに注意してください。そうしないと、ページで目的の効果が得られない可能性があります。 2列目から結合を開始したため、objectSpanMethod メソッドの columnIndex は 1 から始まります。実際の状況に応じて変更できます。インターフェイスから取得したデータを getListDataForRowAndColumn メソッドに格納し、rowAndColumn と rowRoomColumn を定義することを忘れないでください。 以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。 以下もご興味があるかもしれません:
|
<<: Mapper SQL ステートメント フィールドとエンティティ クラス属性名の関係は何ですか?
>>: Docker を使用した ELK7.3.0 ログ収集サービスの導入に関するベスト プラクティス
目次序文紹介-公式設定例序文vueCli を使用してプロジェクトを開発したことのある方は、少しがっか...
目次Dockerを起動するDockerを停止するPython 呼び出しスクリプト最近、日々のテストで...
最近、練習プロジェクトをしていたときにスライダーを使う必要があったので、調べてみました。まず、水平ス...
1つ、 G:\MySQL\MySQL Server 5.7\bin> mysqld --ini...
時間に余裕を持って、過去を忘れましょう。前のセクションでは、[検索] フォームとクエリおよびリセット...
前面に書かれた多くの場合、現在のプロジェクトの状況とビジネスニーズに基づいて Nginx をインスト...
問題を解決するBootstrap は、次の問題を解決する CSS フレームワークです。デバイス間での...
easyui フレームワークのコードは次のとおりです。 css: .ファイルボックス{ フロート:...
Web には一般的な読み込みアイコンが 2 つあります。1 つは iOS の「菊」、もう 1 つは ...
目次1. 配列の役割: 2. 配列の定義: 1. コンストラクタを通じて配列を作成する2. リテラル...
目次1. 手順1. ボタンの権限を定義する2. ストアを定義する3. 権限指示を作成する4. パーミ...
この記事では、フォームの完全選択または逆選択を実現するためのJavaScriptの具体的なコードを参...
はじめに: すべてのブラウザには、「ユーザー エージェント スタイル シート」と呼ばれる、すべてのペ...
[LeetCode] 196.重複したメールを削除するSQL クエリを記述して、Person とい...
HTML スタイル タグスタイルタグ - ドキュメント内でスタイルを宣言するときにこのタグを使用しま...