gpt4 book ai didi

angular - primeng turbotable 列自动调整大小与滚动

转载 作者:太空狗 更新时间:2023-10-29 18:07:53 24 4
gpt4 key购买 nike

我正在使用 turbo 表并需要以下内容:

  • 让所有列根据内容自动调整大小。
  • 让表格本身水平填充屏幕,例如不要手动指定宽度
  • 当自动调整大小的列需要的空间超过表格宽度所能提供的空间且无需手动指定任何列宽时,以及在使用列切换添加新列时,让表格水平滚动。

从我得到的涡轮表例子中:

<p-table [columns]="cols" [value]="cars" [scrollable]="true" scrollHeight="200px" 
[style]="{'width':'100%'}">
<ng-template pTemplate="colgroup" let-columns>
<colgroup>
<col *ngFor="let col of columns" style="width:250px">
</colgroup>
</ng-template>
<ng-template pTemplate="header" let-columns>
<tr>
<th *ngFor="let col of columns">
{{col.header}}
</th>
</tr>
</ng-template>
<ng-template pTemplate="body" let-rowData let-columns="columns">
<tr>
<td *ngFor="let col of columns">
{{rowData[col.field]}}
</td>
</tr>
</ng-template>
</p-table>

但我不想用

<col *ngFor="let col of columns" style="width:250px">

这是一个plnkr

最佳答案

在您的文件 .html 中使用此代码

<p-table [style]="{'overflow':'auto!important'}"
[columns]="cols" [value]="Dataset"
[resizableColumns]="true" columnResizeMode="expand"
[responsive]="true" [rows]="20"
[immutable]=false
[paginator]="true" [rowsPerPageOptions]="[10,15,20,25]">
<ng-template pTemplate="header" let-columns>
<tr>
<th *ngFor="let col of columns" [pSortableColumn]="col.field" pResizableColumn >
{{col.header}}
<p-sortIcon [field]="col.field"></p-sortIcon>
</th>
</tr>
</ng-template>
<ng-template pTemplate="body" let-rowData let-columns="columns">
<tr>
<td *ngFor="let col of columns" class="ui-resizable-column">
{{rowData[col.field]}}
</td>
</tr>
</ng-template>
</p-table>

和添加此 css 代码或自动调整并重新销售列.scss

//table ui
::ng-deep .ui-table table, .ui-table table
{ table-layout:auto !important;
}
::ng-deep .ui-table-tablewrapper {
width: auto!important;
}

::ng-deep .ui-table-resizable {
padding-bottom: 1px;
/* overflow: auto; */
width: auto !important;
}
.ui-table .ui-table-tbody > tr, .ui-table .ui-table-thead > tr > th, .ui-table .ui-table-tfoot > tr > td{
max-width: 300px !important;
font-size: 12px;
padding: 0px !important;
padding-left: 4px !important;
color: black;
text-transform: capitalize;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis !important;
border-width: 1px;
}

关于angular - primeng turbotable 列自动调整大小与滚动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49669821/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com