#angular
Вопрос:
Вот песочница библиотеки с компонентом, который я пытаюсь использовать.
https://codesandbox.io/s/7vm68?file=/src/app/app.component.ts
Я хочу передать общее количество элементов в таблицу, чтобы она отображала нужное количество страниц. У этого nz-table
компонента есть специальная поддержка nzTotal
, и я считаю, что это то, что мне нужно, но когда я устанавливаю его, скажем, на 5000, он все равно отображает одну страницу.
Вот код из библиотеки:
import { Component, OnInit } from '@angular/core';
interface ItemData {
id: string;
name: string;
age: string;
address: string;
}
@Component({
selector: 'nz-demo-table-edit-cell',
template: `
<button nz-button (click)="addRow()" nzType="primary">Add</button>
<br />
<br />
<nz-table #editRowTable nzBordered [nzData]="listOfData">
<thead>
<tr>
<th nzWidth="30%">Name</th>
<th>Age</th>
<th>Address</th>
<th>Action</th>
</tr>
</thead>
<tbody>
<tr *ngFor="let data of editRowTable.data" class="editable-row">
<td>
<div class="editable-cell" [hidden]="editId === data.id" (click)="startEdit(data.id)">
{{ data.name }}
</div>
<input [hidden]="editId !== data.id" type="text" nz-input [(ngModel)]="data.name" (blur)="stopEdit()" />
</td>
<td>{{ data.age }}</td>
<td>{{ data.address }}</td>
<td>
<a nz-popconfirm nzPopconfirmTitle="Sure to delete?" (nzOnConfirm)="deleteRow(data.id)">Delete</a>
</td>
</tr>
</tbody>
</nz-table>
`,
styles: [
`
.editable-cell {
position: relative;
padding: 5px 12px;
cursor: pointer;
}
.editable-row:hover .editable-cell {
border: 1px solid #d9d9d9;
border-radius: 4px;
padding: 4px 11px;
}
`
]
})
export class NzDemoTableEditCellComponent implements OnInit {
i = 0;
editId: string | null = null;
listOfData: ItemData[] = [];
startEdit(id: string): void {
this.editId = id;
}
stopEdit(): void {
this.editId = null;
}
addRow(): void {
this.listOfData = [
...this.listOfData,
{
id: `${this.i}`,
name: `Edward King ${this.i}`,
age: '32',
address: `London, Park Lane no. ${this.i}`
}
];
this.i ;
}
deleteRow(id: string): void {
this.listOfData = this.listOfData.filter(d => d.id !== id);
}
ngOnInit(): void {
this.addRow();
this.addRow();
}
}
Что не так с этой нумерацией страниц?
Ответ №1:
Я полагаю, вам следует использовать [pageSize]
и [pageIndex]
реквизит тоже, когда вы используете [nzTotal]