diff --git a/components/table/Table.jsx b/components/table/Table.jsx index 4fa86790d..5b13508f1 100755 --- a/components/table/Table.jsx +++ b/components/table/Table.jsx @@ -490,13 +490,15 @@ export default { return getPopupContainer; } // Use undefined to let rc component use default logic. - return scroll && table ? () => table.tableNode : undefined; + return scroll && table ? () => table.getTableNode() : undefined; }, scrollToFirstRow() { const { scroll } = this.$props; if (scroll && scroll.scrollToFirstRowOnChange !== false) { scrollTo(0, { - getContainer: () => this.$refs.vcTable.bodyTable, + getContainer: () => { + return this.$refs.vcTable.getBodyTable(); + }, }); } }, diff --git a/components/vc-table/index.js b/components/vc-table/index.js index 614c47784..57a299952 100644 --- a/components/vc-table/index.js +++ b/components/vc-table/index.js @@ -20,6 +20,12 @@ const Table = { ColumnGroup, props: T.props, methods: { + getTableNode() { + return this.$refs.table.tableNode; + }, + getBodyTable() { + return this.$refs.table.ref_bodyTable; + }, normalize(elements = []) { const columns = []; elements.forEach(element => { @@ -63,6 +69,7 @@ const Table = { columns, }, on: getListeners(this), + ref: 'table', }; return ; }, diff --git a/components/vc-table/src/TableHeaderRow.jsx b/components/vc-table/src/TableHeaderRow.jsx index 107691b05..38c93f839 100644 --- a/components/vc-table/src/TableHeaderRow.jsx +++ b/components/vc-table/src/TableHeaderRow.jsx @@ -51,8 +51,10 @@ const TableHeaderRow = { } headerCellProps.class = classNames( - customProps.class || customProps.className, - column.class || column.className, + customProps.class, + customProps.className, + column.class, + column.className, { [`${prefixCls}-align-${column.align}`]: !!column.align, [`${prefixCls}-row-cell-ellipsis`]: !!column.ellipsis,