UNPKG

choerodon-ui

Version:

An enterprise-class UI design language and React-based implementation

53 lines (47 loc) 1.62 kB
import React, { useContext } from 'react'; import measureScrollbar from '../../_util/measureScrollbar'; import BaseTable from './BaseTable'; import TableContext from './TableContext'; export default function HeadTable(props) { var table = useContext(TableContext); var _table$props = table.props, prefixCls = _table$props.prefixCls, scroll = _table$props.scroll, showHeader = _table$props.showHeader; var columns = props.columns, fixed = props.fixed, tableClassName = props.tableClassName, handleBodyScrollLeft = props.handleBodyScrollLeft, expander = props.expander; var saveRef = table.saveRef; var useFixedHeader = table.props.useFixedHeader; var headStyle = {}; if (scroll.y) { useFixedHeader = true; // Add negative margin bottom for scroll bar overflow bug var scrollbarWidth = measureScrollbar('horizontal'); if (scrollbarWidth > 0 && !fixed) { headStyle.marginBottom = "-".concat(scrollbarWidth, "px"); headStyle.paddingBottom = '0px'; } } if (!useFixedHeader || !showHeader) { return null; } return /*#__PURE__*/React.createElement("div", { key: "headTable", ref: fixed ? null : saveRef('headTable'), className: "".concat(prefixCls, "-header"), style: headStyle, onScroll: handleBodyScrollLeft }, /*#__PURE__*/React.createElement(BaseTable, { tableClassName: tableClassName, hasHead: true, hasBody: false, hasFoot: false, fixed: fixed, columns: columns, expander: expander })); } HeadTable.displayName = 'RcHeadTable'; //# sourceMappingURL=HeadTable.js.map