AngularMaterial表格动态垂直高度限制
创始人
2024-10-28 08:01:30
0

使用MatTableDataSource和ViewChild来动态计算表格高度并设置max-height属性。以下是代码示例:

HTML:


  ...

TypeScript:

import { Component, OnInit, ViewChild, ElementRef } from '@angular/core';
import { MatTableDataSource } from '@angular/material/table';

@Component({
  selector: 'app-table-example',
  templateUrl: './table-example.component.html',
  styleUrls: ['./table-example.component.scss']
})
export class TableExampleComponent implements OnInit {
  @ViewChild('table') table: ElementRef;

  dataSource = new MatTableDataSource();
  tableHeight: string;

  ngOnInit(): void {
    this.dataSource.data = [{...}, {...}, ...];
    this.calculateTableHeight();
  }

  calculateTableHeight() {
    const tableElement = this.table.nativeElement;
    const headerEnd = tableElement.querySelector('.mat-header-row').getBoundingClientRect().bottom;
    const footerStart = tableElement.querySelector('.mat-footer-row').getBoundingClientRect().top;
    const height = footerStart - headerEnd;
    this.tableHeight = `${height}px`;
  }
}

在ngOnInit中设置数据源并调用calculateTableHeight来计算表格高度。calculateTableHeight中使用ElementRef和querySelector获取表格头和表格尾的坐标,并计算表格高度。最后将表格高度设置为max-height属性的值。

相关内容

热门资讯

目前来看"xpoke... 目前来看"xpoker辅助工具"扑克之星辅助(真是真的是有辅助安装)-哔哩哔哩小薇(辅助器软件下载)...
透视解迷"werpl... 透视解迷"werplan免费挂下载"其实存在有辅助软件(哔哩哔哩)亲,关键说明,werplan免费挂...
连日来"pokemo... 连日来"pokemomo辅助工具"约局吧德州可以透视吗(一贯是真的辅助软件)-哔哩哔哩1、打开软件启...
透视普及"hhpok... 透视普及"hhpoker是真的假的"本来真的有辅助攻略(哔哩哔哩)1、在hhpoker是真的假的插件...
反观"poker辅助... 反观"poker辅助器免费安装"约局吧辅助器(一贯是有辅助工具)-哔哩哔哩1、这是跨平台的poker...
透视开挂"hhpok... 透视开挂"hhpoker外开挂靠谱吗"切实有辅助教程(哔哩哔哩)1、在hhpoker外开挂靠谱吗插件...
辅助透视"wepok... 辅助透视"wepoker有用吗"wepokerplus到底是挂了吗(本来真的有辅助下载)-哔哩哔哩1...
透视有挂"wepok... 透视有挂"wepoker破解器"一贯存在有辅助脚本(哔哩哔哩)1、超多福利:超高返利,海量正版游戏,...
据文件显示"wepo... 据文件显示"wepoker有用吗"wepoker正确养号方法(竟然有辅助辅助器)-哔哩哔哩1、让任何...
透视专业"wepok... 透视专业"wepokerplus脚本"原来是真的辅助方法(哔哩哔哩)一、wepokerplus脚本游...