Skip to content

Commit e8930f6

Browse files
committed
fix #494
1 parent adfcf00 commit e8930f6

File tree

1 file changed

+22
-10
lines changed

1 file changed

+22
-10
lines changed

src/TableHeaderColumn.js

+22-10
Original file line numberDiff line numberDiff line change
@@ -71,12 +71,22 @@ class TableHeaderColumn extends Component {
7171

7272
render() {
7373
let defaultCaret;
74+
const {
75+
dataAlign,
76+
headerAlign,
77+
hidden,
78+
sort,
79+
dataSort,
80+
sortIndicator,
81+
children,
82+
caretRender
83+
} = this.props;
7484
const thStyle = {
75-
textAlign: this.props.dataAlign,
76-
display: this.props.hidden ? 'none' : null
85+
textAlign: headerAlign || dataAlign,
86+
display: hidden ? 'none' : null
7787
};
78-
if (this.props.sortIndicator) {
79-
defaultCaret = (!this.props.dataSort) ? null : (
88+
if (sortIndicator) {
89+
defaultCaret = (!dataSort) ? null : (
8090
<span className='order'>
8191
<span className='dropdown'>
8292
<span className='caret' style={ { margin: '10px 0 10px 5px', color: '#ccc' } }></span>
@@ -87,20 +97,20 @@ class TableHeaderColumn extends Component {
8797
</span>
8898
);
8999
}
90-
let sortCaret = this.props.sort ? Util.renderReactSortCaret(this.props.sort) : defaultCaret;
91-
if (this.props.caretRender) {
92-
sortCaret = this.props.caretRender(this.props.sort);
100+
let sortCaret = sort ? Util.renderReactSortCaret(sort) : defaultCaret;
101+
if (caretRender) {
102+
sortCaret = caretRender(sort);
93103
}
94104

95-
const classes = this.props.className + ' ' + (this.props.dataSort ? 'sort-column' : '');
96-
const title = typeof this.props.children === 'string' ? { title: this.props.children } : null;
105+
const classes = this.props.className + ' ' + (dataSort ? 'sort-column' : '');
106+
const title = typeof children === 'string' ? { title: children } : null;
97107
return (
98108
<th ref='header-col'
99109
className={ classes }
100110
style={ thStyle }
101111
onClick={ this.handleColumnClick }
102112
{ ...title }>
103-
{ this.props.children }{ sortCaret }
113+
{ children }{ sortCaret }
104114
<div onClick={ e => e.stopPropagation() }>
105115
{ this.props.filter ? this.getFilters() : null }
106116
</div>
@@ -117,6 +127,7 @@ for (const key in Const.FILTER_TYPE) {
117127
TableHeaderColumn.propTypes = {
118128
dataField: PropTypes.string,
119129
dataAlign: PropTypes.string,
130+
headerAlign: PropTypes.string,
120131
dataSort: PropTypes.bool,
121132
onSort: PropTypes.func,
122133
dataFormat: PropTypes.func,
@@ -155,6 +166,7 @@ TableHeaderColumn.propTypes = {
155166

156167
TableHeaderColumn.defaultProps = {
157168
dataAlign: 'left',
169+
headerAlign: undefined,
158170
dataSort: false,
159171
dataFormat: undefined,
160172
csvFormat: undefined,

0 commit comments

Comments
 (0)