MCPcopy Create free account
hub / github.com/ElemeFE/element-react / handleSortClick

Method handleSortClick

src/table/TableHeader.jsx:141–169  ·  view source on GitHub ↗
(column: _Column, givenOrder: ?string, event: SyntheticEvent<any>)

Source from the content-addressed store, hash-verified

139 }
140
141 handleSortClick(column: _Column, givenOrder: ?string, event: SyntheticEvent<any>) {
142 event.stopPropagation();
143 event.nativeEvent.stopImmediatePropagation();
144
145 let target: Object = event.target;
146 while (target && target.tagName !== 'TH') {
147 target = target.parentNode;
148 }
149 if (target.classList.contains('noclick')) return;
150
151 let order;
152 if (givenOrder) {
153 order = givenOrder;
154 } else {
155 const { sortColumn, sortOrder } = this.props.store;
156 if (column === sortColumn) {
157 if (!sortOrder) {
158 order = 'ascending';
159 } else {
160 order = sortOrder === 'ascending' ? 'descending' : null;
161 }
162 } else {
163 order = 'ascending';
164 }
165 }
166 this.context.store.changeSortCondition(column, order);
167
168 this.dispatchEvent('onHeaderClick', column, event)
169 }
170
171 handleFilterClick(column: _Column, event?: SyntheticEvent<any>) {
172 if (event) {

Callers 1

handleHeaderClickMethod · 0.95

Calls 3

dispatchEventMethod · 0.95
containsMethod · 0.80
changeSortConditionMethod · 0.80

Tested by

no test coverage detected