primeng - 表 primeNg 5.2.7 - 嵌套对象
问题描述
我用 primeNg 绘制了一个表,该表有一个对象,该对象又包含其他对象。
// 控制器
this.cols = [
{ field: 'persona', subfield: 'dni', header: 'NIF' },
{ field: 'persona', subfield: 'nombre', header: 'Nombre' },
{ field: 'persona', subfield: 'apellido1', header: 'Apellido 1' },
{ field: 'persona', subfield: 'apellido2', header: 'Apellido 2' },
{ field: 'emailEmpresa', header: 'Email' }
];
// 看法
<ng-template pTemplate="body" let-rowData let-columns="columns">
<tr [pSelectableRow]="rowData">
<td *ngFor="let col of columns">
<div *ngIf="col.subfield;then nested_object_content else normal_content"></div>
<ng-template #nested_object_content>
{{rowData[col.field][col.subfield]}}
</ng-template>
<ng-template #normal_content>
{{rowData[col.field]}}
</ng-template>
</td>
</tr>
</ngTemplate>
// 问题是导出到 csv 时:
dataTable.exportCSV();
// 当创建 CSV 而不是放置嵌套值的值时,我得到以下信息:
[object Object]
如何正确获取价值?
解决方案
您可以尝试如下:
this.cols = [
{field: 'persona.dni', header: 'NIF'},
{field: 'persona.nombre', header: 'Nombre'},
{field: 'persona.apellido1', header: 'Apellido 1'},
{field: 'persona.apellido2', header: 'Apellido 2'},
{field: 'emailEmpresa', header: 'Email'}
];
<ng-template pTemplate="body" let-value>
<tr>
<td>{{value.persona.dni}}</td>
<td>{{value.persona.nombre}}</td>
<td>{{value.persona.apellido1}}</td>
<td>{{value.persona.apellido2}}</td>
<td>{{value.emailEmpresa}}</td>
</tr>
</ng-template>
它将在最终的 CSV 文件中解析exportCSV()
函数的嵌套[object Object]
场景。
推荐阅读
- typescript - 如何从 TypeScript 中的其他服务动态访问方法?
- abap - MM中计算模式的功能模块
- c# - 如何将 int 数格式化为十进制/双精度数
- reactjs - 错误:无法向 https://www.gstatic.com/firebasejs/releases.json firebase init 发出请求
- variables - 如何使 Kubernetes 集群中的 POD 可以访问全局环境变量
- r - Rshiny:为评论添加自由文本
- python - 重命名文件夹中的特定文件
- sum - 获取按列分区的值的 SUM 作为度量
- javascript - VueJs,不同的错误或警告取决于特定的数据值
- node.js - 在 node js 模块中导入时未找到错误发生