How to set minimum value of rows primeNG datatable

2019-09-16 13:56发布

I have an angular 2 project that uses primeNG's datatable. I have a list of person which populates the datatable. What I want is to set the minimum value of rows in the datatable. Let's say I want the table to have a minimum of 10 rows. So even if my person list is below 10 I want the table rows to be always set to 10 rows to which all of the remaining rows will be a just blank rows. How can I set that in PrimeNg datatable. Here's my plunkr http://plnkr.co/edit/SPwdr4nYoYJ0z4hIzkUK?p=preview.

 <p-dataTable [value]="persons" [editable]="true"  resizableColumns="true" reorderableColumns="true" scrollable="true" scrollHeight="80vh"> 
    <p-column field="firstName" header="First Name" [editable]="true"></p-column>
    <p-column field="lastName" [editable]="true" header="Last Name"></p-column>
    <p-column field="favoriteColor"  header="Favorite Color"></p-column>
    <p-column field="registered" header="Registered">
        <template let-person="rowData" pTemplate>
          <p-inputSwitch [(ngModel)]="person.registered"></p-inputSwitch>
      </template>
    </p-column>
</p-dataTable>

1条回答
聊天终结者
2楼-- · 2019-09-16 14:20

Use the below code ,

if(this.persons.length<10){
        let temp= {"firstName": "","lastName":"","registered":'',"favoriteColor": ""};
        for(let i=this.persons.length;i<10;i++){
          this.persons.push(temp);
        }console.log(this.persons);
      }

The output look likes

enter image description here

Updated Plunker

查看更多
登录 后发表回答