diff --git a/JsonExcel.vue b/JsonExcel.vue
index fd04dd4..583aabe 100644
--- a/JsonExcel.vue
+++ b/JsonExcel.vue
@@ -42,6 +42,12 @@ export default {
header: {
default: null,
},
+
+ // Title(s) for single column data, must be an array (ex: ['titleCol0',,TitleCol2])
+ perColumnsHeaders: {
+ default: null,
+ },
+
// Footer(s) for the data, could be a string or an array of strings (multiple footers)
footer: {
default: null,
@@ -158,6 +164,16 @@ export default {
);
}
+ // perColumnsHeaders
+ const perColumnsHeaders = this.perColumnsHeaders;
+ if(Array.isArray(perColumnsHeaders)) {
+ xlsData += "
";
+ for (let pchKey in perColumnsHeaders) {
+ xlsData += "" + perColumnsHeaders[pchKey] + " | ";
+ }
+ xlsData += "
";
+ }
+
//Fields
xlsData += "";
for (let key in data[0]) {
@@ -211,6 +227,17 @@ export default {
csvData.push(this.parseExtraData(header, "${data}\r\n"));
}
+ // perColumnsHeaders
+ const perColumnsHeaders = this.perColumnsHeaders;
+ if(Array.isArray(perColumnsHeaders)) {
+ for (let pchKey in perColumnsHeaders) {
+ csvData.push(perColumnsHeaders[pchKey]);
+ csvData.push(",");
+ }
+ csvData.pop();
+ csvData.push("\r\n");
+ }
+
//Fields
for (let key in data[0]) {
csvData.push(key);
diff --git a/dist/vue-json-excel.cjs.js b/dist/vue-json-excel.cjs.js
index 48b0d55..45278a1 100644
--- a/dist/vue-json-excel.cjs.js
+++ b/dist/vue-json-excel.cjs.js
@@ -207,6 +207,10 @@ var script = {
header: {
default: null,
},
+ // Title(s) for single column data, must be an array (ex: ['titleCol0',,TitleCol2])
+ perColumnsHeaders: {
+ default: null,
+ },
// Footer(s) for the data, could be a string or an array of strings (multiple footers)
footer: {
default: null,
@@ -323,6 +327,16 @@ var script = {
);
}
+ // perColumnsHeaders
+ const perColumnsHeaders = this.perColumnsHeaders;
+ if(Array.isArray(perColumnsHeaders)) {
+ xlsData += "
";
+ for (let pchKey in perColumnsHeaders) {
+ xlsData += "" + perColumnsHeaders[pchKey] + " | ";
+ }
+ xlsData += "
";
+ }
+
//Fields
xlsData += "";
for (let key in data[0]) {
@@ -376,6 +390,17 @@ var script = {
csvData.push(this.parseExtraData(header, "${data}\r\n"));
}
+ // perColumnsHeaders
+ const perColumnsHeaders = this.perColumnsHeaders;
+ if(Array.isArray(perColumnsHeaders)) {
+ for (let pchKey in perColumnsHeaders) {
+ csvData.push(perColumnsHeaders[pchKey]);
+ csvData.push(",");
+ }
+ csvData.pop();
+ csvData.push("\r\n");
+ }
+
//Fields
for (let key in data[0]) {
csvData.push(key);
diff --git a/dist/vue-json-excel.esm.js b/dist/vue-json-excel.esm.js
index 2d9535d..2599826 100644
--- a/dist/vue-json-excel.esm.js
+++ b/dist/vue-json-excel.esm.js
@@ -205,6 +205,10 @@ var script = {
header: {
default: null,
},
+ // Title(s) for single column data, must be an array (ex: ['titleCol0',,TitleCol2])
+ perColumnsHeaders: {
+ default: null,
+ },
// Footer(s) for the data, could be a string or an array of strings (multiple footers)
footer: {
default: null,
@@ -321,6 +325,16 @@ var script = {
);
}
+ // perColumnsHeaders
+ const perColumnsHeaders = this.perColumnsHeaders;
+ if(Array.isArray(perColumnsHeaders)) {
+ xlsData += "
";
+ for (let pchKey in perColumnsHeaders) {
+ xlsData += "" + perColumnsHeaders[pchKey] + " | ";
+ }
+ xlsData += "
";
+ }
+
//Fields
xlsData += "";
for (let key in data[0]) {
@@ -374,6 +388,17 @@ var script = {
csvData.push(this.parseExtraData(header, "${data}\r\n"));
}
+ // perColumnsHeaders
+ const perColumnsHeaders = this.perColumnsHeaders;
+ if(Array.isArray(perColumnsHeaders)) {
+ for (let pchKey in perColumnsHeaders) {
+ csvData.push(perColumnsHeaders[pchKey]);
+ csvData.push(",");
+ }
+ csvData.pop();
+ csvData.push("\r\n");
+ }
+
//Fields
for (let key in data[0]) {
csvData.push(key);
diff --git a/dist/vue-json-excel.umd.js b/dist/vue-json-excel.umd.js
index bd2c0dc..d4190af 100644
--- a/dist/vue-json-excel.umd.js
+++ b/dist/vue-json-excel.umd.js
@@ -210,7 +210,11 @@
// Title(s) for the data, could be a string or an array of strings (multiple titles)
header: {
default: null,
- },
+ },
+ // Title(s) for single column data, must be an array (ex: ['titleCol0',,TitleCol2])
+ perColumnsHeaders: {
+ default: null,
+ },
// Footer(s) for the data, could be a string or an array of strings (multiple footers)
footer: {
default: null,
@@ -325,7 +329,17 @@
header,
'
${data} |
'
);
- }
+ }
+
+ // perColumnsHeaders
+ const perColumnsHeaders = this.perColumnsHeaders;
+ if(Array.isArray(perColumnsHeaders)) {
+ xlsData += "";
+ for (let pchKey in perColumnsHeaders) {
+ xlsData += "" + perColumnsHeaders[pchKey] + " | ";
+ }
+ xlsData += "
";
+ }
//Fields
xlsData += "";
@@ -378,7 +392,18 @@
const header = this.header || this.$attrs.title;
if (header) {
csvData.push(this.parseExtraData(header, "${data}\r\n"));
- }
+ }
+
+ // perColumnsHeaders
+ const perColumnsHeaders = this.perColumnsHeaders;
+ if(Array.isArray(perColumnsHeaders)) {
+ for (let pchKey in perColumnsHeaders) {
+ csvData.push(perColumnsHeaders[pchKey]);
+ csvData.push(",");
+ }
+ csvData.pop();
+ csvData.push("\r\n");
+ }
//Fields
for (let key in data[0]) {