我正在尝试将数据从primeng turbo 表导出到csv。问题是下面代码中的“行”是一个对象数组,我根据相应的键使用 ngIf 在表格主体中显示,因此显示不是问题,但是当我尝试导出到 csv 时,我得到了对象在单元格而不是对象属性中。有没有办法使用 datatable.exportCSV() 获取对象属性
这是我正在做的事情
<p-table #dt [columns]="cols" [value]="rows" selectionMode="multiple" [(selection)]="selectedResults">
<ng-template pTemplate="caption">
Test Set - {{testsetid}}
<div class="ui-helper-clearfix">
<button type="button" pButton icon="fa fa-file-o" iconPos="left" label="All Data" (click)="dt.exportCSV()" style="float:left"></button>
<button type="button" pButton icon="fa fa-file" iconPos="left" label="Selection Only" (click)="dt.exportCSV({selectionOnly:true})" style="float:right"></button>
</div>
</ng-template>
<ng-template pTemplate="header" let-columns>
<tr>
<th *ngFor="let col of cols">
{{col.header}}
</th>
</tr>
</ng-template>
<ng-template pTemplate="body" let-row let-columns="cols">
<tr [pSelectableRow] = "row">
<td *ngFor="let col of cols" [ngStyle]="{'background-color': getColor(row[col.field]['status'])}">
<span *ngIf="col.field == 'script_name'" >{{row[col.field]}}</span>
<span *ngIf="col.field != 'script_name'" >
<a [routerLink]="['/localrunreport' , row[col.field]['sessionId']]"> {{row[col.field]['status']}}</a>
</span>
</td>
</tr>
</ng-template>
</p-table>
这是我在 csv 文件中得到的: exported csv
这是因为对象数组的类型为:
[{'script_name': value, 'device_name':{'status':value,'sessionId':value}}}
所以你可以看到问题都是因为 device_name 键有一个对象的值。有没有办法我可以在 csv 文件中拥有 obj 属性。