0
votes

Hi I'm trying to use primeNG for datatable but the output is just a basic table with no properties of it applied. Component:

import { Component } from '@angular/core';
import {AccordionModule} from 'primeng/primeng';     //accordion and accordion tab
import {MenuItem} from 'primeng/primeng';  
import {DataTableModule} from 'primeng/components/datatable/datatable';
import {SharedModule} from 'primeng/primeng';
import { sampleProducts } from './products';

@Component({
  selector: 'data-grid',
  templateUrl: './data-grid.html'
})
export class DataGridComponent {
  private data: any[] = sampleProducts;
}

template:

<p-dataTable [value]="data" [editable]="true">
<p-column field="PayScaleArea" header="PayScaleArea"></p-column>
<p-column field="PayScaleTypeCode" header="PayScaleTypeCode" [sortable]="true"></p-column>
<p-column field="MeritPercentage" header="MeritPercentage" [sortable]="true"></p-column>
<p-column field="CreatedBy" header="CreatedBy"></p-column>
<p-column field="CreatedDate" header="CreatedDate"></p-column>

app.module:

    import { NgModule } from '@angular/core';
import {FormsModule} from '@angular/forms';
import { BrowserModule } from '@angular/platform-browser';
import { BrowserAnimationsModule } from '@angular/platform-browser/animations';
import { AppComponent } from './app.component';
import {AccordionModule} from 'primeng/primeng';     //accordion and accordion tab
import {MenuItem} from 'primeng/primeng';  
import {DataTableModule} from 'primeng/components/datatable/datatable';
import {SharedModule} from 'primeng/primeng';
import { DataGridComponent } from './data-grid.component';


@NgModule({
   bootstrap:    [AppComponent],
   declarations: [AppComponent,DataGridComponent],
   imports:      [BrowserModule, BrowserAnimationsModule, AccordionModule,DataTableModule,SharedModule]
})
export class AppModule {
}

output: Looks like normal table. Is there anything missing in the setup.

2

2 Answers

2
votes

Did you try setting the columns as editable too? like:

 <p-column field="PayScaleArea" header="PayScaleArea" [editable]="true"></p-column>
2
votes

Do you still have the problem ?

I created this Plunker with your code where I just added [editable]="true" for each p-column and everything seems to be ok (sorting and editing data), isn't it ?

<p-dataTable [value]="data" [editable]="true">
  <p-column field="PayScaleArea" header="PayScaleArea" [editable]="true"></p-column>
  <p-column field="PayScaleTypeCode" header="PayScaleTypeCode" [sortable]="true" [editable]="true"></p-column>
  <p-column field="MeritPercentage" header="MeritPercentage" [sortable]="true" [editable]="true"></p-column>
  <p-column field="CreatedBy" header="CreatedBy" [editable]="true"></p-column>
  <p-column field="CreatedDate" header="CreatedDate" [editable]="true"></p-column>
</p-dataTable>