diff --git a/src/components/datatable/TableFooter.vue b/src/components/datatable/TableFooter.vue
index d3f92ba6fc..780a8f14d0 100755
--- a/src/components/datatable/TableFooter.vue
+++ b/src/components/datatable/TableFooter.vue
@@ -7,7 +7,7 @@
-
+
@@ -34,6 +34,20 @@ export default {
methods: {
columnProp(col, prop) {
return ObjectUtils.getVNodeProp(col, prop);
+ },
+ getFooterColumns(row){
+ let cols = [];
+
+ if (row.children && row.children.default) {
+ row.children.default().forEach(child => {
+ if (child.children && child.children instanceof Array)
+ cols = [...cols, ...child.children];
+ else if (child.type.name === 'Column')
+ cols.push(child);
+ });
+
+ return cols;
+ }
}
},
computed: {
diff --git a/src/components/datatable/TableHeader.vue b/src/components/datatable/TableHeader.vue
index fd37590be9..b8c1c45fed 100755
--- a/src/components/datatable/TableHeader.vue
+++ b/src/components/datatable/TableHeader.vue
@@ -33,7 +33,7 @@
-
+
{
+ if (child.children && child.children instanceof Array)
+ cols = [...cols, ...child.children];
+ else if (child.type.name === 'Column')
+ cols.push(child);
+ });
+
+ return cols;
+ }
}
},
components: {