Skip to content

Commit

Permalink
Fixed #2107 - DataTable - Headers of Columns with exportable at false…
Browse files Browse the repository at this point in the history
… are exported
  • Loading branch information
mertsincan committed Jun 14, 2021
1 parent b18851d commit e5dc1a4
Showing 1 changed file with 15 additions and 22 deletions.
37 changes: 15 additions & 22 deletions src/components/datatable/DataTable.js
Original file line number Diff line number Diff line change
Expand Up @@ -1170,46 +1170,39 @@ export class DataTable extends Component {
}

//headers
for(let i = 0; i < columns.length; i++) {
if(columns[i].props.field) {
csv += '"' + (columns[i].props.header || columns[i].props.field) + '"';
columns.forEach((column, i) => {
const { field, header, exportable } = column.props;

if(i < (columns.length - 1)) {
if (exportable && field) {
csv += '"' + (header || field) + '"';

if (i < (columns.length - 1)) {
csv += this.props.csvSeparator;
}
}
}
});

//body
data.forEach((record, i) => {
data.forEach((record) => {
csv += '\n';
for(let i = 0; i < columns.length; i++) {
let column = columns[i],
field = column.props.field;
columns.forEach((column, i) => {
const { field, exportable } = column.props;

if (column.props.exportable && field) {
if (exportable && field) {
let cellData = ObjectUtils.resolveFieldData(record, field);

if (cellData != null) {
if (this.props.exportFunction) {
cellData = this.props.exportFunction({
data: cellData,
field: field
});
}
else
cellData = String(cellData).replace(/"/g, '""');
}
if (cellData != null)
cellData = this.props.exportFunction ? this.props.exportFunction({ data: cellData, field }) : String(cellData).replace(/"/g, '""');
else
cellData = '';

csv += '"' + cellData + '"';

if(i < (columns.length - 1)) {
if (i < (columns.length - 1)) {
csv += this.props.csvSeparator;
}
}
}
});
});

let blob = new Blob([csv],{
Expand Down

0 comments on commit e5dc1a4

Please sign in to comment.