【问题标题】:How to use Date Pipes for some columns in PrimeNG table with dynamic number of columns如何对 PrimeNG 表中具有动态列数的某些列使用日期管道
【发布时间】:2020-04-25 18:23:26
【问题描述】:

我正在尝试显示动态列数,并且还尝试使用<ng-template ... 来指定单元格的呈现方式。但是在我的数据集中,有一些字段属于日期类型。我想使用日期管道格式化这些字段。

html文件

<ng-template pTemplate="body" let-rowData let-columns="columns">
      <tr>
        <td *ngFor="let col of columns" [style.width]="col.width">
          {{rowData[col.field]| col?.pipe}}
        </td>
      </tr>
</ng-template>

typescript 文件(在 cols 数组中,我想添加另一个这样的字段。)

 this.cols = [
      { field: 'no', header: 'No.', width: '50px',pipe:null },
      { field: 'createdDate', header: 'createdDate', width: '175px', pipe: 'date: \'dd/MM/yyyy\''},
      { field: 'deviceName', header: 'Device Name', width: '150px'}
    ];

我已经尝试过了,它给了我模板解析错误。

ERROR 错误:未捕获(承诺中):错误:模板解析错误:

【问题讨论】:

    标签: angular typescript primeng


    【解决方案1】:

    这样试试

    this.cols = [
              { field: 'no', header: 'No.', width: '50px',pipe:null },
              { field: 'createdDate', header: 'createdDate', width: '175px', data: true , format: `dd/MM/yyyy`},
              { field: 'deviceName', header: 'Device Name', width: '150px'}
            ];
    

    模板

    <ng-template pTemplate="body" let-rowData let-columns="columns">
          <tr>
            <td *ngFor="let col of columns" [style.width]="col.width">   
              {{ col.data ? (rowData[col.field]| date : col.format) : rowData[col.field] }}
            </td>
          </tr>
    </ng-template>
    
    

    demo ??

    【讨论】:

    • @BinaraThambugala 我已经更新答案有一个错字{{ col.data ? (rowData[col.field]| date : col.format) : rowData[col.field] }}
    • @BinaraThambugala 你检查我更新的答案了吗,你还有问题吗?
    • @BinaraThambugala 我将创建一个演示 ?
    • @BinaraThambugala |我创建了一个演示,它运行良好??
    猜你喜欢
    • 2018-11-29
    • 1970-01-01
    • 2018-11-29
    • 1970-01-01
    • 2019-11-09
    • 2019-12-31
    • 2018-03-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多