[英]How to update the length in getRangeLabel mat paginator
@Injectable()
export class MyCustomPaginatorIntl extends MatPaginatorIntl {
public getRangeLabel = (page: number, pageSize: number, length: number): string => {
if (length === 0 || pageSize === 0) {
return `${this.noRecord}`;
}
length = Math.max(length, 0);
const startIndex = ((page * pageSize) > length) ?
(Math.ceil(length / pageSize) - 1) * pageSize :
page * pageSize;
const endIndex = Math.min(startIndex + pageSize, length);
this.getAndInitTranslations(startIndex, endIndex, length);
return `${this.totalRecord}`;
}
}
我正在尝试更新长度(总记录),即长度说 100,是否可以在调用分页器dataSource.paginator = this.paginator;
后将长度值从同一组件中的另一个 ts 文件传递给dataSource.paginator = this.paginator;
export class NewComponent implements OnInit(){
length = 120;
public ngOnInit() {
this.dataSource = new MatTableDataSource(this.data);
this.dataSource.paginator = this.paginator
//After this can i able to update the getRangeLabel with custom length 120
}
}
我假设您只想设置 mat-pagiator 的总长度。 您正在寻找一种将其与组件属性绑定的方法。 您可以通过将其与 mat-paginator 的 length 输入属性绑定来简单地做到这一点。 请在下面找到实现它所需的代码:
所需的模板更改:
<mat-paginator [length]="length"
</mat-paginator>
打字稿所需的更改,假设我有一个名为 length 的属性:
length:number = 120;
请在此处找到工作代码: https : //stackblitz.com/edit/angular-xofqpn
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.