@para-ui/core 3.0.27 → 3.0.29
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/AutoBox/index.js +48 -88
- package/AutoTips/index.js +25 -32
- package/Breadcrumbs/index.js +43 -63
- package/Button/SplitButton.d.ts +1 -1
- package/Button/index.d.ts +1 -1
- package/Button/index.js +88 -118
- package/ButtonGroup/index.js +27 -36
- package/Carousel/index.d.ts +2 -2
- package/Carousel/index.js +27 -28
- package/Cascader/index.js +52 -64
- package/Checkbox/index.js +23 -39
- package/CheckboxGroup/index.js +31 -48
- package/Collapse/collapsePanel.d.ts +1 -1
- package/Collapse/index.d.ts +1 -1
- package/Collapse/index.js +9 -29
- package/Collapse/util.d.ts +2 -2
- package/CollapseBox/index.js +45 -56
- package/CollapseLayout/index.js +35 -54
- package/ComboSelect/index.js +231 -358
- package/ComboSelect/interface.d.ts +3 -3
- package/Container/index.js +17 -20
- package/DatePicker/generatePicker/index.d.ts +17 -17
- package/DatePicker/index.d.ts +4 -4
- package/DatePicker/index.js +111 -167
- package/Desktop/index.js +62 -173
- package/Drawer/index.js +65 -58
- package/Drawer/interface.d.ts +7 -3
- package/Dropdown/index.d.ts +1 -1
- package/Dropdown/index.js +3 -3
- package/Empty/index.js +17 -22
- package/Form/index.d.ts +1 -1
- package/Form/index.js +40 -82
- package/FormItem/index.d.ts +1 -1
- package/FormItem/index.js +13 -13
- package/FormItem/validateFunction.d.ts +1 -1
- package/FunctionModal/index.js +11 -11
- package/GlobalContext/index.js +3 -3
- package/GlobalContext/usePopupContainer.d.ts +1 -1
- package/Help/index.js +11 -11
- package/HelperText/index.js +11 -12
- package/InputLang/index.js +47 -80
- package/InputNumber/index.js +65 -100
- package/Label/index.js +15 -16
- package/Loading/index.js +6 -7
- package/Menu/index.js +148 -328
- package/Menu/interface.d.ts +2 -2
- package/Menu/verticalMenuList.d.ts +1 -1
- package/Message/index.d.ts +1 -1
- package/Message/index.js +45 -64
- package/Modal/Confirm/index.d.ts +2 -2
- package/Modal/index.d.ts +1 -1
- package/Modal/index.js +119 -152
- package/MultiBox/index.js +43 -75
- package/Notification/index.d.ts +2 -2
- package/Notification/index.js +51 -72
- package/OperateBtn/index.js +42 -70
- package/PageHeader/index.js +120 -286
- package/PageHeader/interface.d.ts +1 -1
- package/Pagination/index.d.ts +16 -5
- package/Pagination/index.js +169 -188
- package/ParauiProvider/index.js +2 -3
- package/PasswordRules/index.js +12 -30
- package/PopConfirm/index.d.ts +1 -1
- package/PopConfirm/index.js +52 -59
- package/Popover/index.js +8 -9
- package/Progress/index.d.ts +6 -6
- package/Progress/index.js +50 -89
- package/Querying/index.js +14 -17
- package/README.md +16 -0
- package/Radio/index.js +21 -33
- package/RadioGroup/index.js +32 -47
- package/Search/index.js +44 -66
- package/Select/index.js +176 -343
- package/SelectInput/index.js +8 -9
- package/Selector/index.js +298 -686
- package/SelectorPicker/index.d.ts +2 -0
- package/SelectorPicker/index.js +64 -97
- package/SingleBox/index.js +29 -54
- package/Slider/index.d.ts +1 -1
- package/Slider/index.js +29 -41
- package/Slider/interface.d.ts +2 -2
- package/Split/index.js +10 -23
- package/Status/index.js +8 -7
- package/Stepper/index.d.ts +1 -1
- package/Stepper/index.js +20 -25
- package/Switch/index.d.ts +2 -2
- package/Switch/index.js +19 -20
- package/Table/index.js +590 -1028
- package/Table/interface.d.ts +15 -6
- package/Table/tableBodyInterface.d.ts +4 -0
- package/Table/tablePagination.d.ts +1 -1
- package/Table/{tablePaginationInterFace.d.ts → tablePaginationInterface.d.ts} +4 -1
- package/Tabs/index.d.ts +3 -3
- package/Tabs/index.js +47 -65
- package/Tag/TagGroup.d.ts +1 -1
- package/Tag/index.d.ts +2 -2
- package/Tag/index.js +72 -107
- package/TextEditor/index.d.ts +2 -2
- package/TextEditor/index.js +81 -105
- package/TextField/index.js +141 -220
- package/TimePicker/index.d.ts +1 -1
- package/TimePicker/index.js +12 -15
- package/Timeline/index.js +42 -52
- package/Title/index.js +10 -9
- package/ToggleButton/ToggleButtonGroup.d.ts +1 -1
- package/ToggleButton/index.js +50 -70
- package/Tooltip/index.js +64 -98
- package/Tooltip/interface.d.ts +1 -1
- package/Transfer/index.d.ts +1 -1
- package/Transfer/index.js +89 -116
- package/Transfer/useClick.d.ts +1 -1
- package/Tree/index.js +10 -10
- package/Tree/interface.d.ts +6 -6
- package/Upload/Dragger/index.d.ts +1 -1
- package/Upload/ImageUpload/index.d.ts +1 -1
- package/Upload/ImgCrop/EasyCrop.d.ts +1 -1
- package/Upload/index.d.ts +1 -1
- package/Upload/index.js +283 -475
- package/Upload/interface.d.ts +2 -2
- package/_verture/{constant-bf34e6fa.js → constant-66aa48a1.js} +0 -1
- package/_verture/defineProperty-62acccfc.js +34 -0
- package/_verture/{index-342379c6.js → index-06fea29b.js} +79 -124
- package/_verture/{index-c40bd040.js → index-131f8fe5.js} +80 -181
- package/_verture/{index-31ce5a11.js → index-92144ad3.js} +238 -445
- package/_verture/{index-bbed73a3.js → index-be4faaee.js} +19 -61
- package/_verture/{intl-336570e4.js → intl-5cbb940c.js} +4 -12
- package/_verture/{modalContext-d646d9db.js → modalContext-c749e1c6.js} +18 -43
- package/_verture/{slicedToArray-d7722f4b.js → slicedToArray-77980792.js} +23 -25
- package/_verture/{toConsumableArray-f8047a75.js → toConsumableArray-87c7d895.js} +1 -1
- package/_verture/{useFormatMessage-f4452258.js → useFormatMessage-703f8b20.js} +1 -3
- package/_verture/{useGlobalProps-af9a2af6.js → useGlobalProps-1b846a65.js} +1 -2
- package/_verture/{usePopupContainer-b8ab7cab.js → usePopupContainer-87febeb9.js} +10 -25
- package/_verture/{util-a77b261e.js → util-7e1fb1e2.js} +2 -3
- package/index.js +15 -15
- package/package.json +4 -5
- package/_verture/defineProperty-0590dc61.js +0 -16
package/Table/index.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { _ as _toConsumableArray } from '../_verture/toConsumableArray-
|
|
1
|
+
import { _ as _toConsumableArray } from '../_verture/toConsumableArray-87c7d895.js';
|
|
2
2
|
import { _ as _typeof } from '../_verture/typeof-498dd2b1.js';
|
|
3
|
-
import { _ as _slicedToArray } from '../_verture/slicedToArray-
|
|
4
|
-
import { r as regenerator } from '../_verture/index-
|
|
3
|
+
import { _ as _slicedToArray } from '../_verture/slicedToArray-77980792.js';
|
|
4
|
+
import { r as regenerator } from '../_verture/index-06fea29b.js';
|
|
5
5
|
import { _ as __rest, a as __awaiter } from '../_verture/tslib.es6-55ed4bd2.js';
|
|
6
6
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
7
7
|
import { useRef, useState, useEffect, useMemo, useCallback, Fragment as Fragment$1 } from 'react';
|
|
8
8
|
import { Get, Post, DeepClone, GetBrowserClass, ArrayToObject, Cancel } from '@paraview/lib';
|
|
9
9
|
import { s as styleInject } from '../_verture/style-inject.es-300983ab.js';
|
|
10
|
-
import { $ as $prefixCls } from '../_verture/constant-
|
|
10
|
+
import { $ as $prefixCls } from '../_verture/constant-66aa48a1.js';
|
|
11
11
|
import { Popover } from '../Popover/index.js';
|
|
12
12
|
import { Checkbox } from '../Checkbox/index.js';
|
|
13
13
|
import { Button } from '../Button/index.js';
|
|
@@ -16,64 +16,61 @@ import Screen from '@para-ui/icons/ScreenF';
|
|
|
16
16
|
import SolidArrowUp from '@para-ui/icons/UpTriangleF';
|
|
17
17
|
import SolidArrowDown from '@para-ui/icons/DownTriangleF';
|
|
18
18
|
import Panel from '@para-ui/icons/Panel';
|
|
19
|
-
import { u as useFormatMessage } from '../_verture/useFormatMessage-
|
|
20
|
-
import { _ as _defineProperty } from '../_verture/defineProperty-
|
|
19
|
+
import { u as useFormatMessage } from '../_verture/useFormatMessage-703f8b20.js';
|
|
20
|
+
import { _ as _defineProperty } from '../_verture/defineProperty-62acccfc.js';
|
|
21
21
|
import { Radio } from '../Radio/index.js';
|
|
22
22
|
import Empty from '../Empty/index.js';
|
|
23
23
|
import OperateBtn from '../OperateBtn/index.js';
|
|
24
24
|
import Down from '@para-ui/icons/Down';
|
|
25
25
|
import { Pagination } from '../Pagination/index.js';
|
|
26
26
|
import { Loading } from '../Loading/index.js';
|
|
27
|
-
import { u as useGlobalProps } from '../_verture/useGlobalProps-
|
|
27
|
+
import { u as useGlobalProps } from '../_verture/useGlobalProps-1b846a65.js';
|
|
28
28
|
import '../Tooltip/index.js';
|
|
29
29
|
import 'rc-tooltip';
|
|
30
30
|
import 'rc-tooltip/lib/placements';
|
|
31
31
|
import 'clsx';
|
|
32
|
-
import '../_verture/usePopupContainer-
|
|
32
|
+
import '../_verture/usePopupContainer-87febeb9.js';
|
|
33
33
|
import '../Label/index.js';
|
|
34
34
|
import '../Help/index.js';
|
|
35
35
|
import '@para-ui/icons/Help';
|
|
36
36
|
import '@para-ui/icons/LoadingF';
|
|
37
37
|
import '@para-ui/icons/Forbid';
|
|
38
|
-
import '../_verture/index-
|
|
38
|
+
import '../_verture/index-be4faaee.js';
|
|
39
39
|
import 'rc-dropdown';
|
|
40
40
|
import 'dayjs';
|
|
41
41
|
import '@para-ui/core/GlobalContext';
|
|
42
42
|
import '@para-ui/icons/More';
|
|
43
|
-
import '
|
|
44
|
-
import '@para-ui/icons/
|
|
45
|
-
import '@para-ui/icons/
|
|
46
|
-
import '@para-ui/icons/
|
|
47
|
-
import '
|
|
43
|
+
import '../TextField/index.js';
|
|
44
|
+
import '@para-ui/icons/PreviewClose';
|
|
45
|
+
import '@para-ui/icons/PreviewOpen';
|
|
46
|
+
import '@para-ui/icons/CloseCircle';
|
|
47
|
+
import '../HelperText/index.js';
|
|
48
48
|
import '../Select/index.js';
|
|
49
49
|
import '@para-ui/icons/Close';
|
|
50
|
-
import '@para-ui/icons/CloseCircle';
|
|
51
50
|
import '@para-ui/icons/Check';
|
|
52
51
|
import '@para-ui/icons/Search';
|
|
53
|
-
import '
|
|
54
|
-
import '
|
|
55
|
-
import '
|
|
56
|
-
import '@para-ui/icons/
|
|
52
|
+
import '@para-ui/icons/DoubleLeft';
|
|
53
|
+
import '@para-ui/icons/Left';
|
|
54
|
+
import 'rc-pagination';
|
|
55
|
+
import '@para-ui/icons/Right';
|
|
56
|
+
import '@para-ui/icons/DoubleRight';
|
|
57
57
|
|
|
58
58
|
/**
|
|
59
59
|
* 发送请求
|
|
60
60
|
* @param obj {ReqProps} 请求信息
|
|
61
61
|
*/
|
|
62
|
-
|
|
63
62
|
var requestFunc = function requestFunc(obj) {
|
|
64
63
|
var method = obj.method,
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
64
|
+
url = obj.url,
|
|
65
|
+
ctx = obj.ctx,
|
|
66
|
+
data = obj.data,
|
|
67
|
+
otherProps = __rest(obj, ["method", "url", "ctx", "data"]);
|
|
70
68
|
if (method === 'Get') {
|
|
71
69
|
return Get(Object.assign({
|
|
72
70
|
url: url,
|
|
73
71
|
ctx: ctx
|
|
74
72
|
}, otherProps));
|
|
75
73
|
}
|
|
76
|
-
|
|
77
74
|
if (method === 'Post') {
|
|
78
75
|
return Post(Object.assign({
|
|
79
76
|
url: url,
|
|
@@ -87,41 +84,33 @@ var requestFunc = function requestFunc(obj) {
|
|
|
87
84
|
* @param obj {ReqProps} 请求信息
|
|
88
85
|
* @return string get请求地址参数
|
|
89
86
|
*/
|
|
90
|
-
|
|
91
87
|
var handGetReqParams = function handGetReqParams(obj) {
|
|
92
88
|
var str = obj.url;
|
|
93
89
|
var params = obj.data || {};
|
|
94
90
|
var arrKey = Object.keys(params);
|
|
95
91
|
var paramsArr = [];
|
|
96
|
-
|
|
97
92
|
for (var i = 0, l = arrKey.length; i < l; i++) {
|
|
98
93
|
var key = arrKey[i];
|
|
99
94
|
var val = params[key];
|
|
100
|
-
|
|
101
95
|
if (_typeof(val) === 'object') {
|
|
102
96
|
val = encodeURIComponent(JSON.stringify(val));
|
|
103
97
|
} else {
|
|
104
98
|
val = encodeURIComponent(val);
|
|
105
99
|
}
|
|
106
|
-
|
|
107
100
|
paramsArr.push(key + '=' + val);
|
|
108
101
|
}
|
|
109
|
-
|
|
110
102
|
var paramsStr = paramsArr.join('&');
|
|
111
103
|
var pos = str.indexOf('?');
|
|
112
|
-
|
|
113
104
|
if (pos !== -1) {
|
|
114
105
|
str += (pos === str.length - 1 ? '' : '&') + paramsStr;
|
|
115
106
|
} else {
|
|
116
107
|
str += '?' + paramsStr;
|
|
117
108
|
}
|
|
118
|
-
|
|
119
109
|
return str;
|
|
120
110
|
};
|
|
121
111
|
/**
|
|
122
112
|
* 提取字符串里面的数字
|
|
123
113
|
* */
|
|
124
|
-
|
|
125
114
|
var getStringInNumber = function getStringInNumber(str) {
|
|
126
115
|
if (typeof str === 'number') return str;
|
|
127
116
|
var strHand = str.replace(/[^0-9$]/ig, '');
|
|
@@ -132,34 +121,28 @@ var getStringInNumber = function getStringInNumber(str) {
|
|
|
132
121
|
* @param key {string} 键值
|
|
133
122
|
* @param num {number} 过期天数
|
|
134
123
|
* */
|
|
135
|
-
|
|
136
124
|
var getLocalStorageSelectHead = function getLocalStorageSelectHead(key, num) {
|
|
137
125
|
//debugger
|
|
138
126
|
var headJsonStr = window.localStorage.getItem('_paraui_table_head') || '{}';
|
|
139
127
|
var headJson = JSON.parse(headJsonStr);
|
|
140
128
|
var headJsonArr = Object.keys(headJson);
|
|
141
|
-
|
|
142
129
|
for (var i = 0, l = headJsonArr.length; i < l; i++) {
|
|
143
130
|
var keyStr = headJsonArr[i];
|
|
144
131
|
var item = headJson[i];
|
|
145
132
|
if (!item) continue;
|
|
146
133
|
var newDate = new Date().getTime(); // 当前时间
|
|
147
|
-
|
|
148
134
|
var endTime = item.storageTime + item.validity; // 过期时间
|
|
149
135
|
// 过期时间 小于 当前时间, 说明已经过期了, 删除当前表格列数据
|
|
150
|
-
|
|
151
136
|
if (endTime < newDate) {
|
|
152
137
|
delete headJson[keyStr];
|
|
153
138
|
}
|
|
154
139
|
}
|
|
155
|
-
|
|
156
|
-
|
|
157
|
-
|
|
140
|
+
var headJsonItem = headJson[key];
|
|
141
|
+
// 重置过期时间
|
|
158
142
|
if (headJsonItem) {
|
|
159
143
|
headJsonItem.storageTime = new Date().getTime();
|
|
160
144
|
headJsonItem.validity = num * (60 * 60 * 24);
|
|
161
145
|
}
|
|
162
|
-
|
|
163
146
|
return headJsonItem || {};
|
|
164
147
|
};
|
|
165
148
|
/**
|
|
@@ -167,7 +150,6 @@ var getLocalStorageSelectHead = function getLocalStorageSelectHead(key, num) {
|
|
|
167
150
|
* @param key {string} 键值
|
|
168
151
|
* @param val {HeadLocalStorageItem} 保存值
|
|
169
152
|
* */
|
|
170
|
-
|
|
171
153
|
var setLocalStorageSelectHead = function setLocalStorageSelectHead(key, val) {
|
|
172
154
|
var headJsonStr = window.localStorage.getItem('_paraui_table_head') || '{}';
|
|
173
155
|
var headJson = JSON.parse(headJsonStr);
|
|
@@ -179,18 +161,14 @@ var setLocalStorageSelectHead = function setLocalStorageSelectHead(key, val) {
|
|
|
179
161
|
* @param el 当前元素
|
|
180
162
|
* @param selector 查找元素class
|
|
181
163
|
*/
|
|
182
|
-
|
|
183
164
|
var closest = function closest(el, selector) {
|
|
184
165
|
var matchesSelector = el.matches || el.webkitMatchesSelector || el.mozMatchesSelector || el.msMatchesSelector;
|
|
185
|
-
|
|
186
166
|
while (el) {
|
|
187
167
|
if (matchesSelector.call(el, selector)) {
|
|
188
168
|
break;
|
|
189
169
|
}
|
|
190
|
-
|
|
191
170
|
el = el.parentElement;
|
|
192
171
|
}
|
|
193
|
-
|
|
194
172
|
return el;
|
|
195
173
|
};
|
|
196
174
|
|
|
@@ -199,16 +177,14 @@ styleInject(css_248z$7);
|
|
|
199
177
|
|
|
200
178
|
var TableHeadElement = function TableHeadElement(props) {
|
|
201
179
|
var className = props.className,
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
180
|
+
style = props.style,
|
|
181
|
+
children = props.children,
|
|
182
|
+
otherProps = __rest(props, ["className", "style", "children"]);
|
|
206
183
|
var handClass = function handClass() {
|
|
207
184
|
var str = 'table-head-element';
|
|
208
185
|
if (className) str += ' ' + className;
|
|
209
186
|
return str;
|
|
210
187
|
};
|
|
211
|
-
|
|
212
188
|
return jsx("thead", Object.assign({
|
|
213
189
|
className: handClass(),
|
|
214
190
|
style: style
|
|
@@ -222,16 +198,14 @@ styleInject(css_248z$6);
|
|
|
222
198
|
|
|
223
199
|
var TrElement = function TrElement(props) {
|
|
224
200
|
var className = props.className,
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
201
|
+
style = props.style,
|
|
202
|
+
children = props.children,
|
|
203
|
+
otherProps = __rest(props, ["className", "style", "children"]);
|
|
229
204
|
var handClass = function handClass() {
|
|
230
205
|
var str = 'tr-element';
|
|
231
206
|
if (className) str += ' ' + className;
|
|
232
207
|
return str;
|
|
233
208
|
};
|
|
234
|
-
|
|
235
209
|
return jsx("tr", Object.assign({
|
|
236
210
|
className: handClass(),
|
|
237
211
|
style: style
|
|
@@ -245,15 +219,14 @@ styleInject(css_248z$5);
|
|
|
245
219
|
|
|
246
220
|
var ThElement = function ThElement(props) {
|
|
247
221
|
var className = props.className,
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
222
|
+
style = props.style,
|
|
223
|
+
children = props.children,
|
|
224
|
+
draggable = props.draggable,
|
|
225
|
+
_props$lineWidth = props.lineWidth,
|
|
226
|
+
lineWidth = _props$lineWidth === void 0 ? 80 : _props$lineWidth,
|
|
227
|
+
headCell = props.headCell,
|
|
228
|
+
onDragDown = props.onDragDown,
|
|
229
|
+
otherProps = __rest(props, ["className", "style", "children", "draggable", "lineWidth", "headCell", "onDragDown"]);
|
|
257
230
|
var domRef = useRef(null);
|
|
258
231
|
var constData = useRef({
|
|
259
232
|
startX: 0,
|
|
@@ -262,47 +235,39 @@ var ThElement = function ThElement(props) {
|
|
|
262
235
|
tableContainer: null,
|
|
263
236
|
lineDom: null,
|
|
264
237
|
th: null
|
|
265
|
-
});
|
|
266
|
-
|
|
238
|
+
});
|
|
239
|
+
// 处理最小宽度
|
|
267
240
|
var handMinWidth = function handMinWidth(e) {
|
|
268
|
-
var minWidth = lineWidth;
|
|
269
|
-
|
|
241
|
+
var minWidth = lineWidth;
|
|
242
|
+
// 自身设置列宽度小于默认列宽度,最小取自身的
|
|
270
243
|
if (headCell === null || headCell === void 0 ? void 0 : headCell.width) {
|
|
271
244
|
var width = getStringInNumber(headCell.width);
|
|
272
245
|
if (width < minWidth) minWidth = width;
|
|
273
246
|
}
|
|
274
|
-
|
|
275
247
|
var thWidth = constData.current.th.offsetWidth; // th宽度
|
|
276
|
-
|
|
277
248
|
var moveX = e.clientX - constData.current.startX; // 移动的位置
|
|
278
|
-
|
|
279
249
|
var handWidth = thWidth + moveX;
|
|
280
250
|
var initX = constData.current.th.offsetLeft + thWidth;
|
|
281
|
-
var left = initX + moveX;
|
|
282
|
-
|
|
251
|
+
var left = initX + moveX;
|
|
252
|
+
// 移动以后的宽度小于最小宽度,取最小宽度
|
|
283
253
|
if (handWidth < minWidth) {
|
|
284
254
|
// 超出大小限制
|
|
285
255
|
handWidth = minWidth;
|
|
286
256
|
left = constData.current.th.offsetLeft + handWidth;
|
|
287
257
|
}
|
|
288
|
-
|
|
289
258
|
return {
|
|
290
259
|
width: handWidth,
|
|
291
260
|
left: left // 定位线居左距离
|
|
292
|
-
|
|
293
261
|
};
|
|
294
|
-
};
|
|
295
|
-
|
|
296
|
-
|
|
262
|
+
};
|
|
263
|
+
// 鼠标移动事件
|
|
297
264
|
var mousemove = function mousemove(e) {
|
|
298
265
|
var result = handMinWidth(e);
|
|
299
266
|
constData.current.lineDom.style.left = result.left + 'px';
|
|
300
|
-
};
|
|
301
|
-
|
|
302
|
-
|
|
267
|
+
};
|
|
268
|
+
// 鼠标抬起
|
|
303
269
|
var mouseup = function mouseup(e) {
|
|
304
270
|
var _a, _b;
|
|
305
|
-
|
|
306
271
|
var dom = domRef.current;
|
|
307
272
|
var result = handMinWidth(e);
|
|
308
273
|
dom.style.width = result.width + 'px';
|
|
@@ -311,12 +276,10 @@ var ThElement = function ThElement(props) {
|
|
|
311
276
|
onDragDown && onDragDown(result);
|
|
312
277
|
window.removeEventListener('mousemove', mousemove);
|
|
313
278
|
window.removeEventListener('mouseup', mouseup);
|
|
314
|
-
};
|
|
315
|
-
|
|
316
|
-
|
|
279
|
+
};
|
|
280
|
+
// 鼠标按下
|
|
317
281
|
var onMouseDown = function onMouseDown(e) {
|
|
318
282
|
var _a;
|
|
319
|
-
|
|
320
283
|
constData.current.startX = e.clientX;
|
|
321
284
|
constData.current.table = closest(domRef.current, ".".concat($prefixCls, "-table"));
|
|
322
285
|
constData.current.tableContainer = closest(domRef.current, ".".concat($prefixCls, "-table .table-container"));
|
|
@@ -327,41 +290,35 @@ var ThElement = function ThElement(props) {
|
|
|
327
290
|
window.addEventListener('mouseup', mouseup);
|
|
328
291
|
};
|
|
329
292
|
/** 添加定位线 */
|
|
330
|
-
|
|
331
|
-
|
|
332
293
|
var appendLine = function appendLine() {
|
|
333
294
|
if (!constData.current.tableContainer || !constData.current.th) return;
|
|
334
295
|
var tableDom = closest(domRef.current, ".".concat($prefixCls, "-table .table-container table"));
|
|
335
296
|
var tableContainerHeight = constData.current.tableContainer.offsetHeight;
|
|
336
297
|
var tableDomHeight = tableDom.offsetHeight;
|
|
337
298
|
var div = document.createElement('div');
|
|
338
|
-
div.setAttribute('class', 'table-pos-line');
|
|
339
|
-
|
|
340
|
-
div.style.height = (tableDomHeight > tableContainerHeight ? tableContainerHeight : tableDomHeight) + 'px';
|
|
341
|
-
|
|
299
|
+
div.setAttribute('class', 'table-pos-line');
|
|
300
|
+
// 定位线高度
|
|
301
|
+
div.style.height = (tableDomHeight > tableContainerHeight ? tableContainerHeight : tableDomHeight) + 'px';
|
|
302
|
+
// 定位线的居左距离
|
|
342
303
|
div.style.left = constData.current.th.offsetLeft + constData.current.th.offsetWidth + 'px';
|
|
343
304
|
constData.current.lineDom = div;
|
|
344
305
|
constData.current.tableContainer.appendChild(div);
|
|
345
306
|
};
|
|
346
307
|
/** 拖动元素 */
|
|
347
|
-
|
|
348
|
-
|
|
349
308
|
var handDrag = function handDrag() {
|
|
350
309
|
if (!draggable) return null;
|
|
351
310
|
return jsx("div", {
|
|
352
311
|
className: "th-element-draggable-box",
|
|
353
312
|
onMouseDown: onMouseDown
|
|
354
313
|
});
|
|
355
|
-
};
|
|
356
|
-
|
|
357
|
-
|
|
314
|
+
};
|
|
315
|
+
// 处理className
|
|
358
316
|
var handClass = function handClass() {
|
|
359
317
|
var str = 'th-element';
|
|
360
318
|
if (draggable) str += ' th-element-draggable';
|
|
361
319
|
if (className) str += ' ' + className;
|
|
362
320
|
return str;
|
|
363
321
|
};
|
|
364
|
-
|
|
365
322
|
return jsxs("th", Object.assign({
|
|
366
323
|
className: handClass(),
|
|
367
324
|
style: style
|
|
@@ -395,87 +352,72 @@ var localeJson = {
|
|
|
395
352
|
|
|
396
353
|
var TableHead$1 = function TableHead(props) {
|
|
397
354
|
var _props$headData = props.headData,
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
355
|
+
headData = _props$headData === void 0 ? [] : _props$headData,
|
|
356
|
+
sortTable = props.sortTable,
|
|
357
|
+
filter = props.filter,
|
|
358
|
+
expandable = props.expandable,
|
|
359
|
+
check = props.check,
|
|
360
|
+
radio = props.radio,
|
|
361
|
+
onRequestSort = props.onRequestSort,
|
|
362
|
+
_props$orderFieldArr = props.orderFieldArr,
|
|
363
|
+
orderFieldArr = _props$orderFieldArr === void 0 ? [] : _props$orderFieldArr,
|
|
364
|
+
_props$orderTypeArr = props.orderTypeArr,
|
|
365
|
+
orderTypeArr = _props$orderTypeArr === void 0 ? [] : _props$orderTypeArr,
|
|
366
|
+
selectAll = props.selectAll,
|
|
367
|
+
selectStatus = props.selectStatus,
|
|
368
|
+
align = props.align,
|
|
369
|
+
_props$showList = props.showList,
|
|
370
|
+
showList = _props$showList === void 0 ? [] : _props$showList,
|
|
371
|
+
changeShowList = props.changeShowList,
|
|
372
|
+
selectFilter = props.selectFilter,
|
|
373
|
+
changeFilter = props.changeFilter,
|
|
374
|
+
operate = props.operate,
|
|
375
|
+
showColumns = props.showColumns,
|
|
376
|
+
fixedTable = props.fixedTable,
|
|
377
|
+
fixedColumn = props.fixedColumn,
|
|
378
|
+
posFixed = props.posFixed,
|
|
379
|
+
beyondText = props.beyondText,
|
|
380
|
+
lineWidth = props.lineWidth,
|
|
381
|
+
dragColumn = props.dragColumn,
|
|
382
|
+
changeColumnWidth = props.changeColumnWidth,
|
|
383
|
+
headDataConfig = props.headDataConfig;
|
|
428
384
|
var _useState = useState(false),
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
385
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
386
|
+
indeterminate = _useState2[0],
|
|
387
|
+
setIndeterminate = _useState2[1]; // 半选中
|
|
434
388
|
var _useState3 = useState(false),
|
|
435
|
-
|
|
436
|
-
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
|
|
389
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
390
|
+
checked = _useState4[0],
|
|
391
|
+
setChecked = _useState4[1]; // 选中
|
|
440
392
|
var _useState5 = useState(null),
|
|
441
|
-
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
393
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
394
|
+
anchorElColums = _useState6[0],
|
|
395
|
+
setAnchorElColums = _useState6[1]; // 显示列定位元素
|
|
446
396
|
var _useState7 = useState({}),
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
397
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
398
|
+
headDataJson = _useState8[0],
|
|
399
|
+
setHeadDataJson = _useState8[1]; // 显示列json
|
|
452
400
|
var _useState9 = useState({}),
|
|
453
|
-
|
|
454
|
-
|
|
455
|
-
|
|
456
|
-
|
|
457
|
-
|
|
401
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
402
|
+
filterHead = _useState10[0],
|
|
403
|
+
setFilterHead = _useState10[1]; // 过滤项当前表头数据
|
|
458
404
|
var _useState11 = useState({}),
|
|
459
|
-
|
|
460
|
-
|
|
461
|
-
|
|
462
|
-
|
|
463
|
-
|
|
405
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
406
|
+
selectFilterCom = _useState12[0],
|
|
407
|
+
setSelectFilterCom = _useState12[1]; // 过滤项当前选中值
|
|
464
408
|
var intl = useFormatMessage('Table', localeJson);
|
|
465
409
|
useEffect(function () {
|
|
466
410
|
// 全选
|
|
467
411
|
if (selectStatus === 'all') {
|
|
468
412
|
setChecked(true);
|
|
469
413
|
setIndeterminate(false);
|
|
470
|
-
}
|
|
471
|
-
|
|
472
|
-
|
|
414
|
+
}
|
|
415
|
+
// 半选
|
|
473
416
|
if (selectStatus === 'half') {
|
|
474
417
|
setChecked(false);
|
|
475
418
|
setIndeterminate(true);
|
|
476
|
-
}
|
|
477
|
-
|
|
478
|
-
|
|
419
|
+
}
|
|
420
|
+
// 不选
|
|
479
421
|
if (selectStatus === 'not') {
|
|
480
422
|
setChecked(false);
|
|
481
423
|
setIndeterminate(false);
|
|
@@ -484,12 +426,10 @@ var TableHead$1 = function TableHead(props) {
|
|
|
484
426
|
useEffect(function () {
|
|
485
427
|
if (headData) {
|
|
486
428
|
var json = [];
|
|
487
|
-
|
|
488
429
|
for (var i = 0, l = headData.length; i < l; i++) {
|
|
489
430
|
var item = headData[i];
|
|
490
431
|
json[item.name] = item;
|
|
491
432
|
}
|
|
492
|
-
|
|
493
433
|
setHeadDataJson(json);
|
|
494
434
|
}
|
|
495
435
|
}, [headData]);
|
|
@@ -501,7 +441,6 @@ var TableHead$1 = function TableHead(props) {
|
|
|
501
441
|
* @param name 排序列
|
|
502
442
|
* @param event 当前排序元素
|
|
503
443
|
*/
|
|
504
|
-
|
|
505
444
|
var createSortHandler = function createSortHandler(name, item) {
|
|
506
445
|
return function (event) {
|
|
507
446
|
// 不存在排序,不触发事件
|
|
@@ -514,8 +453,6 @@ var TableHead$1 = function TableHead(props) {
|
|
|
514
453
|
* @param event 操作元素
|
|
515
454
|
* @param bol 选中 / 不选中
|
|
516
455
|
*/
|
|
517
|
-
|
|
518
|
-
|
|
519
456
|
var onSelectAll = function onSelectAll(event, bol) {
|
|
520
457
|
if (selectAll) selectAll(event, bol);
|
|
521
458
|
};
|
|
@@ -523,13 +460,10 @@ var TableHead$1 = function TableHead(props) {
|
|
|
523
460
|
* 点击显示选择列
|
|
524
461
|
* @param event 点击元素
|
|
525
462
|
*/
|
|
526
|
-
|
|
527
|
-
|
|
528
463
|
var clickShowColums = function clickShowColums(event) {
|
|
529
464
|
setAnchorElColums(event.currentTarget);
|
|
530
|
-
};
|
|
531
|
-
|
|
532
|
-
|
|
465
|
+
};
|
|
466
|
+
// 点击隐藏选择列
|
|
533
467
|
var clickHideColums = function clickHideColums(bol) {
|
|
534
468
|
if (bol) return;
|
|
535
469
|
setAnchorElColums(null);
|
|
@@ -538,33 +472,27 @@ var TableHead$1 = function TableHead(props) {
|
|
|
538
472
|
* 点击显示列 列表
|
|
539
473
|
* @param item 详细
|
|
540
474
|
*/
|
|
541
|
-
|
|
542
|
-
|
|
543
475
|
var clickColumsList = function clickColumsList(item) {
|
|
544
476
|
return function () {
|
|
545
477
|
var name = item.name;
|
|
546
478
|
var itemHead = headDataJson[name];
|
|
547
|
-
|
|
548
479
|
if (itemHead) {
|
|
549
480
|
// 取消勾选
|
|
550
481
|
delete headDataJson[name];
|
|
551
482
|
var arr = Object.keys(headDataJson);
|
|
552
483
|
var arr1 = [];
|
|
553
|
-
|
|
554
484
|
for (var i = 0, l = arr.length; i < l; i++) {
|
|
555
485
|
var _name = arr[i];
|
|
556
486
|
arr1.push(headDataJson[_name]);
|
|
557
487
|
}
|
|
558
|
-
|
|
559
488
|
changeShowList && changeShowList(arr1, false, item);
|
|
560
489
|
} else {
|
|
561
490
|
headData.push(item);
|
|
562
491
|
changeShowList && changeShowList(headData, false, item);
|
|
563
492
|
}
|
|
564
493
|
};
|
|
565
|
-
};
|
|
566
|
-
|
|
567
|
-
|
|
494
|
+
};
|
|
495
|
+
// 重置显示列
|
|
568
496
|
var resetShowList = function resetShowList() {
|
|
569
497
|
changeShowList && changeShowList(headData, true);
|
|
570
498
|
};
|
|
@@ -573,29 +501,24 @@ var TableHead$1 = function TableHead(props) {
|
|
|
573
501
|
* @param headCell 当前列信息
|
|
574
502
|
* @param event 元素
|
|
575
503
|
*/
|
|
576
|
-
|
|
577
|
-
|
|
578
504
|
var clickShowFilter = function clickShowFilter(headCell) {
|
|
579
505
|
return function (event) {
|
|
580
506
|
setFilterHead(headCell);
|
|
581
507
|
setSelectFilterCom(Object.assign({}, selectFilter));
|
|
582
508
|
};
|
|
583
|
-
};
|
|
584
|
-
|
|
585
|
-
|
|
509
|
+
};
|
|
510
|
+
// 点击隐藏过滤
|
|
586
511
|
var clickHideFilter = function clickHideFilter(bol) {
|
|
587
512
|
if (bol) return;
|
|
588
513
|
setFilterHead({});
|
|
589
514
|
setSelectFilterCom(Object.assign({}, selectFilter));
|
|
590
|
-
};
|
|
591
|
-
|
|
592
|
-
|
|
515
|
+
};
|
|
516
|
+
// 点击过滤
|
|
593
517
|
var clickFilter = function clickFilter(item) {
|
|
594
518
|
return function () {
|
|
595
519
|
var name = filterHead.name;
|
|
596
520
|
var filterValue = DeepClone(selectFilterCom[name] || []);
|
|
597
521
|
var index = filterValue.indexOf(item.value);
|
|
598
|
-
|
|
599
522
|
if (index !== -1) {
|
|
600
523
|
// 勾选 -> 不勾选
|
|
601
524
|
filterValue.splice(index, 1);
|
|
@@ -603,18 +526,14 @@ var TableHead$1 = function TableHead(props) {
|
|
|
603
526
|
// 不勾选 -> 勾选
|
|
604
527
|
filterValue.push(item.value);
|
|
605
528
|
}
|
|
606
|
-
|
|
607
529
|
var filterRadio = filterHead.filterRadio;
|
|
608
|
-
|
|
609
530
|
if (filterRadio) {
|
|
610
531
|
// 过滤单个
|
|
611
532
|
var num = filterValue.indexOf(item.value);
|
|
612
|
-
|
|
613
533
|
if (num !== -1) {
|
|
614
534
|
filterValue = [filterValue[num]];
|
|
615
535
|
}
|
|
616
536
|
}
|
|
617
|
-
|
|
618
537
|
selectFilterCom[name] = filterValue;
|
|
619
538
|
setSelectFilterCom(Object.assign({}, selectFilterCom));
|
|
620
539
|
};
|
|
@@ -623,8 +542,6 @@ var TableHead$1 = function TableHead(props) {
|
|
|
623
542
|
* 重置 / 确定过滤
|
|
624
543
|
* @param type {'reset' | 'confirm'} 重置 / 确定过滤
|
|
625
544
|
*/
|
|
626
|
-
|
|
627
|
-
|
|
628
545
|
var filterFunc = function filterFunc(type) {
|
|
629
546
|
return function () {
|
|
630
547
|
if (type === 'confirm') {
|
|
@@ -643,53 +560,43 @@ var TableHead$1 = function TableHead(props) {
|
|
|
643
560
|
* 处理TableCell
|
|
644
561
|
* @param item 当前列信息
|
|
645
562
|
*/
|
|
646
|
-
|
|
647
|
-
|
|
648
563
|
var handCellClass = function handCellClass(item) {
|
|
649
|
-
var str = 'table-header-box';
|
|
650
|
-
|
|
564
|
+
var str = 'table-header-box';
|
|
565
|
+
// 排序
|
|
651
566
|
if (sortTable && item.name && item.sort !== false) {
|
|
652
567
|
str += ' table-header-box-sort';
|
|
653
568
|
var index = orderFieldArr.indexOf(item.name);
|
|
654
|
-
|
|
655
569
|
if (index !== -1) {
|
|
656
570
|
// 升序
|
|
657
571
|
if (orderTypeArr[index] === 'asc') {
|
|
658
572
|
str += ' table-header-box-sort-asc';
|
|
659
|
-
}
|
|
660
|
-
|
|
661
|
-
|
|
573
|
+
}
|
|
574
|
+
// 降序
|
|
662
575
|
if (orderTypeArr[index] === 'desc') {
|
|
663
576
|
str += ' table-header-box-sort-desc';
|
|
664
577
|
}
|
|
665
578
|
}
|
|
666
|
-
}
|
|
667
|
-
|
|
668
|
-
|
|
579
|
+
}
|
|
580
|
+
// 过滤
|
|
669
581
|
if (filter && item.name && item.filter) {
|
|
670
582
|
str += ' table-header-box-filter';
|
|
671
583
|
}
|
|
672
|
-
|
|
673
584
|
return str;
|
|
674
|
-
};
|
|
675
|
-
|
|
676
|
-
|
|
585
|
+
};
|
|
586
|
+
// 复选框memo
|
|
677
587
|
var TableCheckMemo = useMemo(function () {
|
|
678
588
|
if (check) {
|
|
679
589
|
var handCls = function handCls() {
|
|
680
590
|
var str = 'table-checkbox table-head-btn';
|
|
681
|
-
|
|
682
591
|
if (fixedColumn) {
|
|
683
|
-
str += ' table-fixed-dom-left';
|
|
684
|
-
|
|
592
|
+
str += ' table-fixed-dom-left';
|
|
593
|
+
// 左边没有定位,且没有单选,没有嵌套表格
|
|
685
594
|
if (!(posFixed === null || posFixed === void 0 ? void 0 : posFixed.leftBol) && !radio && !expandable) {
|
|
686
595
|
str += ' table-fixed-dom-left-last';
|
|
687
596
|
}
|
|
688
597
|
}
|
|
689
|
-
|
|
690
598
|
return str;
|
|
691
599
|
};
|
|
692
|
-
|
|
693
600
|
return jsx(ThElement, Object.assign({
|
|
694
601
|
align: "center",
|
|
695
602
|
className: handCls(),
|
|
@@ -706,24 +613,21 @@ var TableHead$1 = function TableHead(props) {
|
|
|
706
613
|
}))
|
|
707
614
|
}));
|
|
708
615
|
}
|
|
709
|
-
}, [check, indeterminate, checked, selectAll, posFixed, radio, expandable, fixedColumn]);
|
|
710
|
-
|
|
616
|
+
}, [check, indeterminate, checked, selectAll, posFixed, radio, expandable, fixedColumn]);
|
|
617
|
+
// 单选框memo
|
|
711
618
|
var TableRadioMemo = useMemo(function () {
|
|
712
619
|
if (radio) {
|
|
713
620
|
var handCls = function handCls() {
|
|
714
621
|
var str = 'table-radio table-head-btn';
|
|
715
|
-
|
|
716
622
|
if (fixedColumn) {
|
|
717
|
-
str += ' table-fixed-dom-left';
|
|
718
|
-
|
|
623
|
+
str += ' table-fixed-dom-left';
|
|
624
|
+
// 左边没有定位,没有嵌套表格
|
|
719
625
|
if (!(posFixed === null || posFixed === void 0 ? void 0 : posFixed.leftBol) && !expandable) {
|
|
720
626
|
str += ' table-fixed-dom-left-last';
|
|
721
627
|
}
|
|
722
628
|
}
|
|
723
|
-
|
|
724
629
|
return str;
|
|
725
630
|
};
|
|
726
|
-
|
|
727
631
|
return jsx(ThElement, Object.assign({
|
|
728
632
|
align: "center",
|
|
729
633
|
className: handCls(),
|
|
@@ -734,24 +638,21 @@ var TableHead$1 = function TableHead(props) {
|
|
|
734
638
|
})
|
|
735
639
|
}));
|
|
736
640
|
}
|
|
737
|
-
}, [radio, posFixed, expandable, fixedColumn]);
|
|
738
|
-
|
|
641
|
+
}, [radio, posFixed, expandable, fixedColumn]);
|
|
642
|
+
// 嵌套表格memo
|
|
739
643
|
var TableExpandableMemo = useMemo(function () {
|
|
740
644
|
if (expandable) {
|
|
741
645
|
var handCls = function handCls() {
|
|
742
646
|
var str = 'table-expandable table-head-btn';
|
|
743
|
-
|
|
744
647
|
if (fixedColumn) {
|
|
745
|
-
str += ' table-fixed-dom-left';
|
|
746
|
-
|
|
648
|
+
str += ' table-fixed-dom-left';
|
|
649
|
+
// 左边没有定位,没有嵌套表格
|
|
747
650
|
if (!(posFixed === null || posFixed === void 0 ? void 0 : posFixed.leftBol)) {
|
|
748
651
|
str += ' table-fixed-dom-left-last';
|
|
749
652
|
}
|
|
750
653
|
}
|
|
751
|
-
|
|
752
654
|
return str;
|
|
753
655
|
};
|
|
754
|
-
|
|
755
656
|
return jsx(ThElement, Object.assign({
|
|
756
657
|
align: "center",
|
|
757
658
|
className: handCls(),
|
|
@@ -762,8 +663,8 @@ var TableHead$1 = function TableHead(props) {
|
|
|
762
663
|
})
|
|
763
664
|
}));
|
|
764
665
|
}
|
|
765
|
-
}, [expandable, posFixed, fixedColumn]);
|
|
766
|
-
|
|
666
|
+
}, [expandable, posFixed, fixedColumn]);
|
|
667
|
+
// 过滤弹窗内容
|
|
767
668
|
var filterPopoverContent = function filterPopoverContent() {
|
|
768
669
|
return jsxs("div", Object.assign({
|
|
769
670
|
className: "filter-select"
|
|
@@ -811,25 +712,22 @@ var TableHead$1 = function TableHead(props) {
|
|
|
811
712
|
}))]
|
|
812
713
|
}))]
|
|
813
714
|
}));
|
|
814
|
-
};
|
|
815
|
-
|
|
816
|
-
|
|
715
|
+
};
|
|
716
|
+
// 表格列拖拽放下
|
|
817
717
|
var onDragDown = function onDragDown(headCell) {
|
|
818
718
|
return function (result) {
|
|
819
719
|
changeColumnWidth && changeColumnWidth(headCell, result);
|
|
820
720
|
};
|
|
821
|
-
};
|
|
822
|
-
|
|
823
|
-
|
|
721
|
+
};
|
|
722
|
+
// 获取宽度
|
|
824
723
|
var getWidth = function getWidth(item) {
|
|
825
724
|
var w = item.width || '';
|
|
826
725
|
var name = item.name || '';
|
|
827
726
|
var wDrag = headDataConfig[name] && headDataConfig[name].width;
|
|
828
727
|
if (wDrag) w = wDrag + 'px';
|
|
829
728
|
return w;
|
|
830
|
-
};
|
|
831
|
-
|
|
832
|
-
|
|
729
|
+
};
|
|
730
|
+
// 内容列memo
|
|
833
731
|
var TableContentMemo = useMemo(function () {
|
|
834
732
|
// 处理过滤的class
|
|
835
733
|
var handFilterClass = function handFilterClass(item) {
|
|
@@ -838,46 +736,37 @@ var TableHead$1 = function TableHead(props) {
|
|
|
838
736
|
if (item.name && selectFilterCom[item.name] && selectFilterCom[item.name].length > 0) str += ' table-header-filter-select';
|
|
839
737
|
return str;
|
|
840
738
|
};
|
|
841
|
-
|
|
842
739
|
var handCls = function handCls(item) {
|
|
843
740
|
var str = '';
|
|
844
741
|
if (item.className) str += item.className;
|
|
845
|
-
|
|
846
742
|
if (fixedColumn && item.fixed) {
|
|
847
|
-
str += ' table-fixed-dom-' + item.fixed;
|
|
848
|
-
|
|
743
|
+
str += ' table-fixed-dom-' + item.fixed;
|
|
744
|
+
// 固定左边,判断是否是最后一个
|
|
849
745
|
if (item.fixed === 'left' && item.paraui_fixed_left_last) {
|
|
850
746
|
str += ' table-fixed-dom-left-last';
|
|
851
|
-
}
|
|
852
|
-
|
|
853
|
-
|
|
747
|
+
}
|
|
748
|
+
// 固定右边,判断是否是第一个
|
|
854
749
|
if (item.fixed === 'right' && item.paraui_fixed_right_first) {
|
|
855
750
|
str += ' table-fixed-dom-right-first';
|
|
856
751
|
}
|
|
857
752
|
}
|
|
858
|
-
|
|
859
753
|
return str;
|
|
860
754
|
};
|
|
861
|
-
|
|
862
755
|
var handStyle = function handStyle(item) {
|
|
863
756
|
var json = {
|
|
864
757
|
width: getWidth(item)
|
|
865
758
|
};
|
|
866
|
-
|
|
867
759
|
if (fixedColumn && item.fixed && item.width) {
|
|
868
760
|
if (item.fixed === 'left') {
|
|
869
761
|
json.left = item.paraui_left_width + 'px';
|
|
870
762
|
}
|
|
871
|
-
|
|
872
763
|
if (item.fixed === 'right') {
|
|
873
764
|
json.right = item.paraui_right_width + 'px';
|
|
874
765
|
}
|
|
875
766
|
}
|
|
876
|
-
|
|
877
767
|
return Object.assign(Object.assign({}, json), item.style);
|
|
878
|
-
};
|
|
879
|
-
|
|
880
|
-
|
|
768
|
+
};
|
|
769
|
+
// 处理过滤
|
|
881
770
|
var handFilterPopover = function handFilterPopover(item) {
|
|
882
771
|
return jsx(Popover, Object.assign({
|
|
883
772
|
placement: "bottom-end",
|
|
@@ -895,16 +784,13 @@ var TableHead$1 = function TableHead(props) {
|
|
|
895
784
|
})
|
|
896
785
|
}))
|
|
897
786
|
}));
|
|
898
|
-
};
|
|
899
|
-
|
|
900
|
-
|
|
787
|
+
};
|
|
788
|
+
// 处理拖拽
|
|
901
789
|
var handDrag = function handDrag(item) {
|
|
902
790
|
if (item.name === 'table-serial-number') return false; // 序号不拖拽
|
|
903
|
-
|
|
904
791
|
if (dragColumn && item.drag !== false) return true;
|
|
905
792
|
return false;
|
|
906
793
|
};
|
|
907
|
-
|
|
908
794
|
return headData.map(function (headCell, index) {
|
|
909
795
|
return jsx(ThElement, Object.assign({
|
|
910
796
|
className: handCls(headCell),
|
|
@@ -946,37 +832,31 @@ var TableHead$1 = function TableHead(props) {
|
|
|
946
832
|
}))
|
|
947
833
|
}), headCell.name || index);
|
|
948
834
|
});
|
|
949
|
-
}, [headData, sortTable, filter, orderFieldArr, orderTypeArr, align, filterHead, selectFilterCom, beyondText, selectFilter, fixedColumn, lineWidth, dragColumn, changeColumnWidth, headDataConfig]);
|
|
950
|
-
|
|
835
|
+
}, [headData, sortTable, filter, orderFieldArr, orderTypeArr, align, filterHead, selectFilterCom, beyondText, selectFilter, fixedColumn, lineWidth, dragColumn, changeColumnWidth, headDataConfig]);
|
|
836
|
+
// 操作栏memo
|
|
951
837
|
var TableOperateMemo = useMemo(function () {
|
|
952
838
|
if (operate) {
|
|
953
839
|
var handCls = function handCls() {
|
|
954
840
|
var str = 'table-operate';
|
|
955
841
|
if (operate.operateBtnRender) str += ' table-operate-small';
|
|
956
|
-
|
|
957
842
|
if (fixedColumn) {
|
|
958
|
-
str += ' table-fixed-dom-right';
|
|
959
|
-
|
|
843
|
+
str += ' table-fixed-dom-right';
|
|
844
|
+
// 存在显示列,且没有右侧固定列
|
|
960
845
|
if (!(posFixed === null || posFixed === void 0 ? void 0 : posFixed.rightBol)) {
|
|
961
846
|
str += ' table-fixed-dom-right-first';
|
|
962
847
|
}
|
|
963
848
|
}
|
|
964
|
-
|
|
965
849
|
return str;
|
|
966
850
|
};
|
|
967
|
-
|
|
968
851
|
var handStyle = function handStyle() {
|
|
969
852
|
var json = {
|
|
970
853
|
width: operate.width
|
|
971
854
|
};
|
|
972
|
-
|
|
973
855
|
if (fixedColumn) {
|
|
974
856
|
json.right = showColumns === "inside" ? '56px' : '0px';
|
|
975
857
|
}
|
|
976
|
-
|
|
977
858
|
return Object.assign(Object.assign({}, json), operate.style);
|
|
978
859
|
};
|
|
979
|
-
|
|
980
860
|
return jsx(ThElement, Object.assign({
|
|
981
861
|
align: operate.align || align,
|
|
982
862
|
style: handStyle(),
|
|
@@ -1002,8 +882,8 @@ var TableHead$1 = function TableHead(props) {
|
|
|
1002
882
|
}))
|
|
1003
883
|
}));
|
|
1004
884
|
}
|
|
1005
|
-
}, [operate, align, posFixed, showColumns, posFixed, beyondText, fixedColumn]);
|
|
1006
|
-
|
|
885
|
+
}, [operate, align, posFixed, showColumns, posFixed, beyondText, fixedColumn]);
|
|
886
|
+
// 显示列弹窗内容
|
|
1007
887
|
var showListContent = function showListContent() {
|
|
1008
888
|
return jsxs("div", Object.assign({
|
|
1009
889
|
className: "show-colums-select"
|
|
@@ -1039,20 +919,17 @@ var TableHead$1 = function TableHead(props) {
|
|
|
1039
919
|
}))
|
|
1040
920
|
}))]
|
|
1041
921
|
}));
|
|
1042
|
-
};
|
|
1043
|
-
|
|
1044
|
-
|
|
922
|
+
};
|
|
923
|
+
// 显示列memo
|
|
1045
924
|
var TableShowList = useMemo(function () {
|
|
1046
925
|
var handCls = function handCls() {
|
|
1047
|
-
var str = 'show-colums table-fixed-dom-right';
|
|
1048
|
-
|
|
926
|
+
var str = 'show-colums table-fixed-dom-right';
|
|
927
|
+
// 没有固定列参数 或者 没有操作栏且没有右侧固定列
|
|
1049
928
|
if (!fixedColumn || !operate && !(posFixed === null || posFixed === void 0 ? void 0 : posFixed.rightBol)) {
|
|
1050
929
|
str += ' table-fixed-dom-right-first';
|
|
1051
930
|
}
|
|
1052
|
-
|
|
1053
931
|
return str;
|
|
1054
932
|
};
|
|
1055
|
-
|
|
1056
933
|
return showColumns === 'inside' && jsx(Popover, Object.assign({
|
|
1057
934
|
placement: "bottom-end",
|
|
1058
935
|
visible: Boolean(anchorElColums),
|
|
@@ -1073,18 +950,16 @@ var TableHead$1 = function TableHead(props) {
|
|
|
1073
950
|
}))
|
|
1074
951
|
}))
|
|
1075
952
|
}));
|
|
1076
|
-
}, [showColumns, posFixed, operate, anchorElColums, showList, headDataJson]);
|
|
1077
|
-
|
|
953
|
+
}, [showColumns, posFixed, operate, anchorElColums, showList, headDataJson]);
|
|
954
|
+
// 处理class
|
|
1078
955
|
var handClass = function handClass() {
|
|
1079
956
|
var str = 'table-head';
|
|
1080
957
|
if (showColumns === 'inside') str += ' table-head-inside';
|
|
1081
958
|
if (!fixedTable) str += ' table-head-scroll'; // 防止长度过长
|
|
1082
959
|
// 没有 复选框,单选框,展开 按钮
|
|
1083
|
-
|
|
1084
960
|
if (!check && !radio && !expandable) str += ' table-head-no-btn';
|
|
1085
961
|
return str;
|
|
1086
962
|
};
|
|
1087
|
-
|
|
1088
963
|
return jsx(TableHeadElement, Object.assign({
|
|
1089
964
|
className: handClass()
|
|
1090
965
|
}, {
|
|
@@ -1099,16 +974,14 @@ styleInject(css_248z$4);
|
|
|
1099
974
|
|
|
1100
975
|
var TableBodyElement = function TableBodyElement(props) {
|
|
1101
976
|
var className = props.className,
|
|
1102
|
-
|
|
1103
|
-
|
|
1104
|
-
|
|
1105
|
-
|
|
977
|
+
style = props.style,
|
|
978
|
+
children = props.children,
|
|
979
|
+
otherProps = __rest(props, ["className", "style", "children"]);
|
|
1106
980
|
var handClass = function handClass() {
|
|
1107
981
|
var str = 'table-body-element';
|
|
1108
982
|
if (className) str += ' ' + className;
|
|
1109
983
|
return str;
|
|
1110
984
|
};
|
|
1111
|
-
|
|
1112
985
|
return jsx("tbody", Object.assign({
|
|
1113
986
|
className: handClass(),
|
|
1114
987
|
style: style
|
|
@@ -1122,16 +995,14 @@ styleInject(css_248z$3);
|
|
|
1122
995
|
|
|
1123
996
|
var TdElement = function TdElement(props) {
|
|
1124
997
|
var className = props.className,
|
|
1125
|
-
|
|
1126
|
-
|
|
1127
|
-
|
|
1128
|
-
|
|
998
|
+
style = props.style,
|
|
999
|
+
children = props.children,
|
|
1000
|
+
otherProps = __rest(props, ["className", "style", "children"]);
|
|
1129
1001
|
var handClass = function handClass() {
|
|
1130
1002
|
var str = 'td-element';
|
|
1131
1003
|
if (className) str += ' ' + className;
|
|
1132
1004
|
return str;
|
|
1133
1005
|
};
|
|
1134
|
-
|
|
1135
1006
|
return jsx("td", Object.assign({
|
|
1136
1007
|
className: handClass(),
|
|
1137
1008
|
style: style
|
|
@@ -1142,93 +1013,83 @@ var TdElement = function TdElement(props) {
|
|
|
1142
1013
|
|
|
1143
1014
|
var TableBody = function TableBody(props) {
|
|
1144
1015
|
var url = props.url,
|
|
1145
|
-
|
|
1146
|
-
|
|
1147
|
-
|
|
1148
|
-
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
1153
|
-
|
|
1154
|
-
|
|
1155
|
-
|
|
1156
|
-
|
|
1157
|
-
|
|
1158
|
-
|
|
1159
|
-
|
|
1160
|
-
|
|
1161
|
-
|
|
1162
|
-
|
|
1163
|
-
|
|
1164
|
-
|
|
1165
|
-
|
|
1166
|
-
|
|
1167
|
-
|
|
1168
|
-
|
|
1169
|
-
|
|
1170
|
-
|
|
1171
|
-
|
|
1172
|
-
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
|
|
1176
|
-
|
|
1177
|
-
|
|
1178
|
-
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
|
-
|
|
1182
|
-
|
|
1183
|
-
|
|
1184
|
-
|
|
1185
|
-
|
|
1186
|
-
|
|
1187
|
-
|
|
1188
|
-
|
|
1189
|
-
|
|
1190
|
-
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
|
|
1194
|
-
|
|
1195
|
-
|
|
1196
|
-
|
|
1197
|
-
|
|
1016
|
+
emptyProps = props.emptyProps,
|
|
1017
|
+
_props$rowData = props.rowData,
|
|
1018
|
+
rowData = _props$rowData === void 0 ? [] : _props$rowData,
|
|
1019
|
+
_props$rowKey = props.rowKey,
|
|
1020
|
+
rowKey = _props$rowKey === void 0 ? 'key' : _props$rowKey,
|
|
1021
|
+
check = props.check,
|
|
1022
|
+
radio = props.radio,
|
|
1023
|
+
tableCell = props.tableCell,
|
|
1024
|
+
expandable = props.expandable,
|
|
1025
|
+
_props$headData = props.headData,
|
|
1026
|
+
headData = _props$headData === void 0 ? [] : _props$headData,
|
|
1027
|
+
_props$disabledJson = props.disabledJson,
|
|
1028
|
+
disabledJson = _props$disabledJson === void 0 ? {} : _props$disabledJson,
|
|
1029
|
+
disabledArrStatus = props.disabledArrStatus,
|
|
1030
|
+
_props$checkJson = props.checkJson,
|
|
1031
|
+
checkJson = _props$checkJson === void 0 ? {} : _props$checkJson,
|
|
1032
|
+
radioValue = props.radioValue,
|
|
1033
|
+
selectCheck = props.selectCheck,
|
|
1034
|
+
selectRadio = props.selectRadio,
|
|
1035
|
+
align = props.align,
|
|
1036
|
+
operate = props.operate,
|
|
1037
|
+
showColumns = props.showColumns,
|
|
1038
|
+
fixedTable = props.fixedTable,
|
|
1039
|
+
fixedColumn = props.fixedColumn,
|
|
1040
|
+
formatter = props.formatter,
|
|
1041
|
+
_props$orderFieldArr = props.orderFieldArr,
|
|
1042
|
+
orderFieldArr = _props$orderFieldArr === void 0 ? [] : _props$orderFieldArr,
|
|
1043
|
+
_props$orderTypeArr = props.orderTypeArr,
|
|
1044
|
+
orderTypeArr = _props$orderTypeArr === void 0 ? [] : _props$orderTypeArr,
|
|
1045
|
+
sortTable = props.sortTable,
|
|
1046
|
+
loadState = props.loadState,
|
|
1047
|
+
loadMore = props.loadMore,
|
|
1048
|
+
loadMoreRender = props.loadMoreRender,
|
|
1049
|
+
onClickMore = props.onClickMore,
|
|
1050
|
+
total = props.total,
|
|
1051
|
+
page = props.page,
|
|
1052
|
+
currentRowsPerPage = props.currentRowsPerPage,
|
|
1053
|
+
changePage = props.changePage,
|
|
1054
|
+
loadMoreUrl = props.loadMoreUrl,
|
|
1055
|
+
_props$expandMultiple = props.expandMultiple,
|
|
1056
|
+
expandMultiple = _props$expandMultiple === void 0 ? false : _props$expandMultiple,
|
|
1057
|
+
_props$expandValue = props.expandValue,
|
|
1058
|
+
expandValue = _props$expandValue === void 0 ? [] : _props$expandValue,
|
|
1059
|
+
_props$disabledExpand = props.disabledExpand,
|
|
1060
|
+
disabledExpand = _props$disabledExpand === void 0 ? [] : _props$disabledExpand,
|
|
1061
|
+
_props$defaultExpandA = props.defaultExpandAllRows,
|
|
1062
|
+
defaultExpandAllRows = _props$defaultExpandA === void 0 ? false : _props$defaultExpandA,
|
|
1063
|
+
onExpand = props.onExpand,
|
|
1064
|
+
_onRefresh = props.onRefresh,
|
|
1065
|
+
posFixed = props.posFixed,
|
|
1066
|
+
beyondText = props.beyondText,
|
|
1067
|
+
onClickRow = props.onClickRow,
|
|
1068
|
+
rowClassMapping = props.rowClassMapping;
|
|
1198
1069
|
var _useState = useState(0),
|
|
1199
|
-
|
|
1200
|
-
|
|
1201
|
-
|
|
1202
|
-
|
|
1203
|
-
|
|
1070
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
1071
|
+
expandableColSpan = _useState2[0],
|
|
1072
|
+
setExpandableColSpan = _useState2[1]; // 嵌套表格合并列数
|
|
1204
1073
|
var _useState3 = useState({}),
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
|
|
1208
|
-
|
|
1209
|
-
|
|
1074
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
1075
|
+
expandableRow = _useState4[0],
|
|
1076
|
+
setExpandableRow = _useState4[1]; // 当前哪行展开表格嵌套
|
|
1210
1077
|
var _useState5 = useState(true),
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1078
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
1079
|
+
showMoreBtn = _useState6[0],
|
|
1080
|
+
setShowMoreBtn = _useState6[1]; // 加载更多
|
|
1216
1081
|
var _useState7 = useState({}),
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
var intl = useFormatMessage('Table', localeJson); // 默认是否展开所有
|
|
1223
|
-
|
|
1082
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
1083
|
+
disabledExpandJson = _useState8[0],
|
|
1084
|
+
setDisabledExpand = _useState8[1]; // 禁用加减部分嵌套
|
|
1085
|
+
var intl = useFormatMessage('Table', localeJson);
|
|
1086
|
+
// 默认是否展开所有
|
|
1224
1087
|
useEffect(function () {
|
|
1225
1088
|
if (!defaultExpandAllRows) {
|
|
1226
1089
|
setExpandableRow({});
|
|
1227
1090
|
return;
|
|
1228
1091
|
}
|
|
1229
|
-
|
|
1230
1092
|
var json = {};
|
|
1231
|
-
|
|
1232
1093
|
for (var i = 0, l = rowData.length; i < l; i++) {
|
|
1233
1094
|
var item = rowData[i] || {};
|
|
1234
1095
|
var id = item[rowKey];
|
|
@@ -1237,20 +1098,18 @@ var TableBody = function TableBody(props) {
|
|
|
1237
1098
|
status: 'develop'
|
|
1238
1099
|
};
|
|
1239
1100
|
}
|
|
1240
|
-
|
|
1241
1101
|
setExpandableRow(json);
|
|
1242
|
-
}, [defaultExpandAllRows, rowData, rowKey]);
|
|
1102
|
+
}, [defaultExpandAllRows, rowData, rowKey]);
|
|
1103
|
+
// 监听展开表格
|
|
1243
1104
|
// 如果直接写expandMultiple, expandValue会死循环
|
|
1244
|
-
|
|
1245
1105
|
useEffect(function () {
|
|
1246
1106
|
if (props.expandValue === undefined) return;
|
|
1247
1107
|
var json = {};
|
|
1248
|
-
var expandValueHand = expandValue;
|
|
1249
|
-
|
|
1108
|
+
var expandValueHand = expandValue;
|
|
1109
|
+
// 只展开一个,去第一个值
|
|
1250
1110
|
if (!expandMultiple && expandValue.length > 0) {
|
|
1251
1111
|
expandValueHand = [expandValue[0]];
|
|
1252
1112
|
}
|
|
1253
|
-
|
|
1254
1113
|
for (var i = 0, l = expandValueHand.length; i < l; i++) {
|
|
1255
1114
|
var id = expandValueHand[i];
|
|
1256
1115
|
json[id] = {
|
|
@@ -1258,18 +1117,15 @@ var TableBody = function TableBody(props) {
|
|
|
1258
1117
|
status: 'develop'
|
|
1259
1118
|
};
|
|
1260
1119
|
}
|
|
1261
|
-
|
|
1262
1120
|
setExpandableRow(json);
|
|
1263
|
-
}, [props.expandMultiple, props.expandValue, rowData]);
|
|
1264
|
-
|
|
1121
|
+
}, [props.expandMultiple, props.expandValue, rowData]);
|
|
1122
|
+
// 监听禁用嵌套 props.disabledExpand 防止死循环
|
|
1265
1123
|
useEffect(function () {
|
|
1266
1124
|
var json = {};
|
|
1267
|
-
|
|
1268
1125
|
for (var i = 0, l = disabledExpand.length; i < l; i++) {
|
|
1269
1126
|
var id = disabledExpand[i];
|
|
1270
1127
|
json[id] = true;
|
|
1271
1128
|
}
|
|
1272
|
-
|
|
1273
1129
|
setDisabledExpand(json);
|
|
1274
1130
|
}, [props.disabledExpand]);
|
|
1275
1131
|
useEffect(function () {
|
|
@@ -1277,8 +1133,8 @@ var TableBody = function TableBody(props) {
|
|
|
1277
1133
|
var bol = Number(total) > Number(page) * Number(currentRowsPerPage);
|
|
1278
1134
|
setShowMoreBtn(bol);
|
|
1279
1135
|
}
|
|
1280
|
-
}, [loadMoreUrl, total, page, currentRowsPerPage]);
|
|
1281
|
-
|
|
1136
|
+
}, [loadMoreUrl, total, page, currentRowsPerPage]);
|
|
1137
|
+
// 处理嵌套表格合并列数
|
|
1282
1138
|
useEffect(function () {
|
|
1283
1139
|
var num = headData.length;
|
|
1284
1140
|
if (expandable) num += 1;
|
|
@@ -1287,8 +1143,8 @@ var TableBody = function TableBody(props) {
|
|
|
1287
1143
|
if (operate) num += 1;
|
|
1288
1144
|
if (showColumns === 'inside') num += 1;
|
|
1289
1145
|
setExpandableColSpan(num);
|
|
1290
|
-
}, [headData, expandable, check, radio]);
|
|
1291
|
-
|
|
1146
|
+
}, [headData, expandable, check, radio]);
|
|
1147
|
+
// 展开/收起嵌套表格
|
|
1292
1148
|
var handClickNestTable = function handClickNestTable(row) {
|
|
1293
1149
|
return function (event) {
|
|
1294
1150
|
var id = row[rowKey];
|
|
@@ -1299,7 +1155,6 @@ var TableBody = function TableBody(props) {
|
|
|
1299
1155
|
id: id,
|
|
1300
1156
|
status: status
|
|
1301
1157
|
};
|
|
1302
|
-
|
|
1303
1158
|
if (expandMultiple) {
|
|
1304
1159
|
// 展开多个
|
|
1305
1160
|
expandableRow[id] = expandItem;
|
|
@@ -1308,62 +1163,51 @@ var TableBody = function TableBody(props) {
|
|
|
1308
1163
|
// 展开一个
|
|
1309
1164
|
setExpandableRow(_defineProperty({}, id, expandItem));
|
|
1310
1165
|
}
|
|
1311
|
-
|
|
1312
1166
|
onExpand && onExpand(row, status);
|
|
1313
1167
|
event.stopPropagation();
|
|
1314
1168
|
};
|
|
1315
|
-
};
|
|
1316
|
-
|
|
1317
|
-
|
|
1169
|
+
};
|
|
1170
|
+
// 处理class
|
|
1318
1171
|
var handClass = function handClass() {
|
|
1319
1172
|
var str = 'table-body';
|
|
1320
|
-
if (!fixedTable) str += ' table-body-scroll';
|
|
1321
|
-
|
|
1173
|
+
if (!fixedTable) str += ' table-body-scroll';
|
|
1174
|
+
// 没有 复选框,单选框,展开 按钮
|
|
1322
1175
|
if (!check && !radio && !expandable) str += ' table-body-no-btn';
|
|
1323
1176
|
return str;
|
|
1324
|
-
};
|
|
1325
|
-
|
|
1326
|
-
|
|
1177
|
+
};
|
|
1178
|
+
// 处理嵌套表格class
|
|
1327
1179
|
var handExpandClass = function handExpandClass(row) {
|
|
1328
1180
|
var id = row[rowKey];
|
|
1329
1181
|
var expandItem = expandableRow[id] || {};
|
|
1330
1182
|
var str = 'retract';
|
|
1331
|
-
|
|
1332
1183
|
if (expandItem.status === 'develop') {
|
|
1333
1184
|
str = 'expand';
|
|
1334
1185
|
}
|
|
1335
|
-
|
|
1336
1186
|
return str;
|
|
1337
|
-
};
|
|
1338
|
-
|
|
1339
|
-
|
|
1187
|
+
};
|
|
1188
|
+
// 点击加载更多
|
|
1340
1189
|
var clickMore = function clickMore() {
|
|
1341
1190
|
if (loadMoreUrl) changePage && changePage();
|
|
1342
1191
|
onClickMore && onClickMore();
|
|
1343
|
-
};
|
|
1344
|
-
|
|
1345
|
-
|
|
1192
|
+
};
|
|
1193
|
+
// 暂无数据memo
|
|
1346
1194
|
var NodataMemo = useMemo(function () {
|
|
1347
1195
|
// 处理刷新按钮
|
|
1348
1196
|
var handRefreshBtn = function handRefreshBtn() {
|
|
1349
1197
|
if ((emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.showRefresh) !== undefined) {
|
|
1350
1198
|
return emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.showRefresh;
|
|
1351
1199
|
}
|
|
1352
|
-
|
|
1353
1200
|
if (url) {
|
|
1354
1201
|
return true;
|
|
1355
1202
|
}
|
|
1356
|
-
|
|
1357
1203
|
return false;
|
|
1358
|
-
};
|
|
1359
|
-
|
|
1360
|
-
|
|
1204
|
+
};
|
|
1205
|
+
// 处理className
|
|
1361
1206
|
var handClassNoData = function handClassNoData() {
|
|
1362
1207
|
var str = 'table-no-data';
|
|
1363
1208
|
if (emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.size) str += ' table-no-data-' + (emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.size);
|
|
1364
1209
|
return str;
|
|
1365
1210
|
};
|
|
1366
|
-
|
|
1367
1211
|
return jsx(TrElement, Object.assign({
|
|
1368
1212
|
className: handClassNoData()
|
|
1369
1213
|
}, {
|
|
@@ -1378,52 +1222,44 @@ var TableBody = function TableBody(props) {
|
|
|
1378
1222
|
emptyProps === null || emptyProps === void 0 ? void 0 : emptyProps.onRefresh(event);
|
|
1379
1223
|
return;
|
|
1380
1224
|
}
|
|
1381
|
-
|
|
1382
1225
|
_onRefresh && _onRefresh();
|
|
1383
1226
|
}
|
|
1384
1227
|
}))
|
|
1385
1228
|
}))
|
|
1386
1229
|
}));
|
|
1387
|
-
}, [expandableColSpan, emptyProps, url, _onRefresh]);
|
|
1388
|
-
|
|
1230
|
+
}, [expandableColSpan, emptyProps, url, _onRefresh]);
|
|
1231
|
+
// 复选框useCallback
|
|
1389
1232
|
var TableCheckCallback = useCallback(function (row) {
|
|
1390
1233
|
if (check) {
|
|
1391
1234
|
var handId = row[rowKey];
|
|
1392
1235
|
var disabledHand = Boolean(disabledJson[handId]);
|
|
1393
1236
|
var checkHand = checkJson[handId] || false;
|
|
1394
1237
|
var showCheck = true;
|
|
1395
|
-
|
|
1396
1238
|
if (disabledHand && disabledArrStatus) {
|
|
1397
1239
|
// 选中
|
|
1398
1240
|
if (disabledArrStatus[handId] === true) {
|
|
1399
1241
|
checkHand = true;
|
|
1400
|
-
}
|
|
1401
|
-
|
|
1402
|
-
|
|
1242
|
+
}
|
|
1243
|
+
// 不选中
|
|
1403
1244
|
if (disabledArrStatus[handId] === false) {
|
|
1404
1245
|
checkHand = false;
|
|
1405
|
-
}
|
|
1406
|
-
|
|
1407
|
-
|
|
1246
|
+
}
|
|
1247
|
+
// 不显示
|
|
1408
1248
|
if (disabledArrStatus[handId] === null) {
|
|
1409
1249
|
showCheck = false;
|
|
1410
1250
|
}
|
|
1411
1251
|
}
|
|
1412
|
-
|
|
1413
1252
|
var handCls = function handCls() {
|
|
1414
1253
|
var str = 'table-checkbox table-body-btn';
|
|
1415
|
-
|
|
1416
1254
|
if (fixedColumn) {
|
|
1417
|
-
str += ' table-fixed-dom-left';
|
|
1418
|
-
|
|
1255
|
+
str += ' table-fixed-dom-left';
|
|
1256
|
+
// 左边没有定位,且没有单选,没有嵌套表格
|
|
1419
1257
|
if (!(posFixed === null || posFixed === void 0 ? void 0 : posFixed.leftBol) && !radio && !expandable) {
|
|
1420
1258
|
str += ' table-fixed-dom-left-last';
|
|
1421
1259
|
}
|
|
1422
1260
|
}
|
|
1423
|
-
|
|
1424
1261
|
return str;
|
|
1425
1262
|
};
|
|
1426
|
-
|
|
1427
1263
|
return jsx(TdElement, Object.assign({
|
|
1428
1264
|
align: "center",
|
|
1429
1265
|
className: handCls()
|
|
@@ -1438,46 +1274,39 @@ var TableBody = function TableBody(props) {
|
|
|
1438
1274
|
})
|
|
1439
1275
|
}));
|
|
1440
1276
|
}
|
|
1441
|
-
}, [check, disabledJson, rowKey, checkJson, selectCheck, disabledArrStatus, posFixed, expandable, radio, fixedColumn]);
|
|
1442
|
-
|
|
1277
|
+
}, [check, disabledJson, rowKey, checkJson, selectCheck, disabledArrStatus, posFixed, expandable, radio, fixedColumn]);
|
|
1278
|
+
// 单选框useCallback
|
|
1443
1279
|
var TableRadioCallback = useCallback(function (row) {
|
|
1444
1280
|
if (radio) {
|
|
1445
1281
|
var handId = row[rowKey];
|
|
1446
1282
|
var disabledHand = Boolean(disabledJson[handId]);
|
|
1447
1283
|
var checkHand = radioValue === row[rowKey];
|
|
1448
1284
|
var showRadio = true;
|
|
1449
|
-
|
|
1450
1285
|
if (disabledHand && disabledArrStatus) {
|
|
1451
1286
|
// 选中
|
|
1452
1287
|
if (disabledArrStatus[handId] === true) {
|
|
1453
1288
|
checkHand = true;
|
|
1454
|
-
}
|
|
1455
|
-
|
|
1456
|
-
|
|
1289
|
+
}
|
|
1290
|
+
// 不选中
|
|
1457
1291
|
if (disabledArrStatus[handId] === false) {
|
|
1458
1292
|
checkHand = false;
|
|
1459
|
-
}
|
|
1460
|
-
|
|
1461
|
-
|
|
1293
|
+
}
|
|
1294
|
+
// 不显示
|
|
1462
1295
|
if (disabledArrStatus[handId] === null) {
|
|
1463
1296
|
showRadio = false;
|
|
1464
1297
|
}
|
|
1465
1298
|
}
|
|
1466
|
-
|
|
1467
1299
|
var handCls = function handCls() {
|
|
1468
1300
|
var str = 'table-radio table-body-btn';
|
|
1469
|
-
|
|
1470
1301
|
if (fixedColumn) {
|
|
1471
|
-
str += ' table-fixed-dom-left';
|
|
1472
|
-
|
|
1302
|
+
str += ' table-fixed-dom-left';
|
|
1303
|
+
// 左边没有定位,没有嵌套表格
|
|
1473
1304
|
if (!(posFixed === null || posFixed === void 0 ? void 0 : posFixed.leftBol) && !expandable) {
|
|
1474
1305
|
str += ' table-fixed-dom-left-last';
|
|
1475
1306
|
}
|
|
1476
1307
|
}
|
|
1477
|
-
|
|
1478
1308
|
return str;
|
|
1479
1309
|
};
|
|
1480
|
-
|
|
1481
1310
|
return jsx(TdElement, Object.assign({
|
|
1482
1311
|
align: "center",
|
|
1483
1312
|
className: handCls()
|
|
@@ -1492,28 +1321,24 @@ var TableBody = function TableBody(props) {
|
|
|
1492
1321
|
})
|
|
1493
1322
|
}));
|
|
1494
1323
|
}
|
|
1495
|
-
}, [radio, disabledJson, radioValue, rowKey, selectRadio, disabledArrStatus, expandable, posFixed, fixedColumn]);
|
|
1496
|
-
|
|
1324
|
+
}, [radio, disabledJson, radioValue, rowKey, selectRadio, disabledArrStatus, expandable, posFixed, fixedColumn]);
|
|
1325
|
+
// 嵌套加减useCallback
|
|
1497
1326
|
var TableExpandableMemo = useCallback(function (row) {
|
|
1498
1327
|
if (!expandable) return null;
|
|
1499
|
-
var expandableDemo = expandable(row);
|
|
1500
|
-
|
|
1328
|
+
var expandableDemo = expandable(row);
|
|
1329
|
+
// 禁用一行表格展开 或者 展开表格返回值为false,返回空列
|
|
1501
1330
|
if (disabledExpandJson[row[rowKey]] || expandableDemo === false) return jsx(TdElement, {});
|
|
1502
|
-
|
|
1503
1331
|
var handCls = function handCls() {
|
|
1504
1332
|
var str = 'table-expandable table-body-btn';
|
|
1505
|
-
|
|
1506
1333
|
if (fixedColumn) {
|
|
1507
|
-
str += ' table-fixed-dom-left';
|
|
1508
|
-
|
|
1334
|
+
str += ' table-fixed-dom-left';
|
|
1335
|
+
// 左边没有定位,没有嵌套表格
|
|
1509
1336
|
if (!(posFixed === null || posFixed === void 0 ? void 0 : posFixed.leftBol)) {
|
|
1510
1337
|
str += ' table-fixed-dom-left-last';
|
|
1511
1338
|
}
|
|
1512
1339
|
}
|
|
1513
|
-
|
|
1514
1340
|
return str;
|
|
1515
1341
|
};
|
|
1516
|
-
|
|
1517
1342
|
return jsx(TdElement, Object.assign({
|
|
1518
1343
|
align: "center",
|
|
1519
1344
|
className: handCls()
|
|
@@ -1523,126 +1348,106 @@ var TableBody = function TableBody(props) {
|
|
|
1523
1348
|
onClick: handClickNestTable(row)
|
|
1524
1349
|
})
|
|
1525
1350
|
}));
|
|
1526
|
-
}, [expandable, expandableRow, rowKey, disabledExpandJson, onExpand, fixedColumn]);
|
|
1527
|
-
|
|
1351
|
+
}, [expandable, expandableRow, rowKey, disabledExpandJson, onExpand, fixedColumn]);
|
|
1352
|
+
// 表格一行内容useCallback
|
|
1528
1353
|
var TableContentUseCallback = useCallback(function (row, rowIndex) {
|
|
1529
1354
|
var params = {
|
|
1530
1355
|
orderFieldArr: orderFieldArr,
|
|
1531
1356
|
orderTypeArr: orderTypeArr
|
|
1532
1357
|
};
|
|
1533
|
-
|
|
1534
1358
|
var handContentClass = function handContentClass(item) {
|
|
1535
1359
|
var str = 'table-content-columms';
|
|
1536
|
-
if (item.className) str += ' ' + item.className;
|
|
1537
|
-
|
|
1360
|
+
if (item.className) str += ' ' + item.className;
|
|
1361
|
+
// 排序
|
|
1538
1362
|
if (sortTable && item.name && item.sort !== false) {
|
|
1539
1363
|
var index = orderFieldArr.indexOf(item.name);
|
|
1540
|
-
|
|
1541
1364
|
if (index !== -1) {
|
|
1542
1365
|
// 升序
|
|
1543
1366
|
if (orderTypeArr[index] === 'asc') {
|
|
1544
1367
|
str += ' table-content-columms-asc';
|
|
1545
|
-
}
|
|
1546
|
-
|
|
1547
|
-
|
|
1368
|
+
}
|
|
1369
|
+
// 降序
|
|
1548
1370
|
if (orderTypeArr[index] === 'desc') {
|
|
1549
1371
|
str += ' table-content-columms-desc';
|
|
1550
1372
|
}
|
|
1551
1373
|
}
|
|
1552
1374
|
}
|
|
1553
|
-
|
|
1554
1375
|
if (item.fixed && fixedColumn) {
|
|
1555
|
-
str += ' table-fixed-dom-' + item.fixed;
|
|
1556
|
-
|
|
1376
|
+
str += ' table-fixed-dom-' + item.fixed;
|
|
1377
|
+
// 固定左边,判断是否是最后一个
|
|
1557
1378
|
if (item.fixed === 'left' && item.paraui_fixed_left_last) {
|
|
1558
1379
|
str += ' table-fixed-dom-left-last';
|
|
1559
|
-
}
|
|
1560
|
-
|
|
1561
|
-
|
|
1380
|
+
}
|
|
1381
|
+
// 固定右边,判断是否是第一个
|
|
1562
1382
|
if (item.fixed === 'right' && item.paraui_fixed_right_first) {
|
|
1563
1383
|
str += ' table-fixed-dom-right-first';
|
|
1564
1384
|
}
|
|
1565
1385
|
}
|
|
1566
|
-
|
|
1567
1386
|
return str;
|
|
1568
1387
|
};
|
|
1569
|
-
|
|
1570
1388
|
var handStyle = function handStyle(item) {
|
|
1571
1389
|
var json = {};
|
|
1572
|
-
|
|
1573
1390
|
if (fixedColumn && item.fixed && item.width) {
|
|
1574
1391
|
if (item.fixed === 'left') {
|
|
1575
1392
|
json.left = item.paraui_left_width + 'px';
|
|
1576
1393
|
}
|
|
1577
|
-
|
|
1578
1394
|
if (item.fixed === 'right') {
|
|
1579
1395
|
json.right = item.paraui_right_width + 'px';
|
|
1580
1396
|
}
|
|
1581
1397
|
}
|
|
1582
|
-
|
|
1583
1398
|
return json;
|
|
1584
1399
|
};
|
|
1585
|
-
|
|
1586
1400
|
return tableCell ? tableCell(row, params) : headData.map(function (item, index) {
|
|
1587
1401
|
var text = row[item.name];
|
|
1588
1402
|
var colSpan = 1;
|
|
1589
1403
|
if (item.render) text = item.render(row, item, row[item.name], index, rowIndex);
|
|
1590
|
-
if (formatter) text = formatter(row, item, row[item.name], index, rowIndex);
|
|
1591
|
-
|
|
1404
|
+
if (formatter) text = formatter(row, item, row[item.name], index, rowIndex);
|
|
1405
|
+
// 存在显示列,最后一列占两格
|
|
1592
1406
|
if (showColumns === 'inside' && !operate && index === headData.length - 1) {
|
|
1593
1407
|
colSpan = 2;
|
|
1594
1408
|
}
|
|
1595
|
-
|
|
1596
1409
|
return jsx(TdElement, Object.assign({
|
|
1597
1410
|
align: item.align || align,
|
|
1598
1411
|
className: handContentClass(item),
|
|
1599
1412
|
colSpan: colSpan,
|
|
1600
1413
|
style: handStyle(item)
|
|
1601
1414
|
}, {
|
|
1602
|
-
children: jsx(AutoTips, Object.assign({
|
|
1415
|
+
children: item.autoTips === undefined || item.autoTips === true ? jsx(AutoTips, Object.assign({
|
|
1603
1416
|
beyondText: item.beyondText === undefined ? beyondText : item.beyondText
|
|
1604
1417
|
}, {
|
|
1605
1418
|
children: text
|
|
1606
|
-
}))
|
|
1419
|
+
})) : text
|
|
1607
1420
|
}), item.name || index);
|
|
1608
1421
|
});
|
|
1609
|
-
}, [tableCell, headData, align, formatter, orderFieldArr, orderTypeArr, sortTable, showColumns, operate, beyondText, fixedColumn]);
|
|
1610
|
-
|
|
1422
|
+
}, [tableCell, headData, align, formatter, orderFieldArr, orderTypeArr, sortTable, showColumns, operate, beyondText, fixedColumn]);
|
|
1423
|
+
// 操作栏useCallback
|
|
1611
1424
|
var TableOperateUseCallback = useCallback(function (row) {
|
|
1612
1425
|
if (operate) {
|
|
1613
1426
|
var colSpan = 1;
|
|
1614
1427
|
if (showColumns === "inside") colSpan = 2;
|
|
1615
|
-
|
|
1616
1428
|
var handOperate = function handOperate() {
|
|
1617
1429
|
if (operate.render) return operate.render(row);
|
|
1618
|
-
|
|
1619
1430
|
if (operate.operateBtnRender) {
|
|
1620
1431
|
var operateConfig = operate.operateBtnRender(row);
|
|
1621
1432
|
return jsx(OperateBtn, Object.assign({}, operateConfig));
|
|
1622
1433
|
}
|
|
1623
1434
|
};
|
|
1624
|
-
|
|
1625
1435
|
var handStyle = function handStyle() {
|
|
1626
1436
|
var json = {
|
|
1627
1437
|
right: '0'
|
|
1628
1438
|
};
|
|
1629
1439
|
return json;
|
|
1630
1440
|
};
|
|
1631
|
-
|
|
1632
1441
|
var handCls = function handCls() {
|
|
1633
1442
|
var str = 'table-operate';
|
|
1634
|
-
|
|
1635
1443
|
if (fixedColumn) {
|
|
1636
1444
|
str += ' table-fixed-dom-right';
|
|
1637
|
-
|
|
1638
1445
|
if (!(posFixed === null || posFixed === void 0 ? void 0 : posFixed.rightBol)) {
|
|
1639
1446
|
str += ' table-fixed-dom-right-first';
|
|
1640
1447
|
}
|
|
1641
1448
|
}
|
|
1642
|
-
|
|
1643
1449
|
return str;
|
|
1644
1450
|
};
|
|
1645
|
-
|
|
1646
1451
|
return jsx(TdElement, Object.assign({
|
|
1647
1452
|
align: operate.align || align,
|
|
1648
1453
|
className: handCls(),
|
|
@@ -1652,16 +1457,14 @@ var TableBody = function TableBody(props) {
|
|
|
1652
1457
|
children: handOperate()
|
|
1653
1458
|
}));
|
|
1654
1459
|
}
|
|
1655
|
-
}, [operate, align, showColumns, posFixed, fixedColumn]);
|
|
1656
|
-
|
|
1460
|
+
}, [operate, align, showColumns, posFixed, fixedColumn]);
|
|
1461
|
+
// 嵌套表格useCallback
|
|
1657
1462
|
var TableExpandableContentUseCallback = useCallback(function (row) {
|
|
1658
1463
|
var id = row[rowKey];
|
|
1659
1464
|
var expandItem = expandableRow[id] || {};
|
|
1660
|
-
|
|
1661
1465
|
if (expandable && expandItem.status === 'develop') {
|
|
1662
1466
|
var expandableDemo = expandable(row);
|
|
1663
1467
|
if (expandableDemo === false) return null; // 展开表格返回值为false,不展示这一行
|
|
1664
|
-
|
|
1665
1468
|
return jsx(TrElement, Object.assign({
|
|
1666
1469
|
className: "table-body-expand-row"
|
|
1667
1470
|
}, {
|
|
@@ -1673,8 +1476,8 @@ var TableBody = function TableBody(props) {
|
|
|
1673
1476
|
}))
|
|
1674
1477
|
}), Math.random());
|
|
1675
1478
|
}
|
|
1676
|
-
}, [expandable, expandableRow, expandableColSpan, rowKey]);
|
|
1677
|
-
|
|
1479
|
+
}, [expandable, expandableRow, expandableColSpan, rowKey]);
|
|
1480
|
+
// 加载更多
|
|
1678
1481
|
var MoreMemo = useMemo(function () {
|
|
1679
1482
|
if (!loadMore || !showMoreBtn) return null;
|
|
1680
1483
|
return jsx(TrElement, Object.assign({
|
|
@@ -1698,9 +1501,13 @@ var TableBody = function TableBody(props) {
|
|
|
1698
1501
|
var TableBodySubjectContentMemo = useMemo(function () {
|
|
1699
1502
|
return jsx(Fragment, {
|
|
1700
1503
|
children: rowData.map(function (row, index) {
|
|
1504
|
+
var str = 'table-body-row';
|
|
1505
|
+
if (rowClassMapping && rowClassMapping[row[rowKey]]) {
|
|
1506
|
+
str += ' ' + rowClassMapping[row[rowKey]];
|
|
1507
|
+
}
|
|
1701
1508
|
return jsxs(Fragment$1, {
|
|
1702
1509
|
children: [jsxs(TrElement, Object.assign({
|
|
1703
|
-
className:
|
|
1510
|
+
className: str,
|
|
1704
1511
|
onClick: function onClick(e) {
|
|
1705
1512
|
onClickRow && onClickRow(row, e);
|
|
1706
1513
|
}
|
|
@@ -1710,20 +1517,19 @@ var TableBody = function TableBody(props) {
|
|
|
1710
1517
|
}, index);
|
|
1711
1518
|
})
|
|
1712
1519
|
});
|
|
1713
|
-
}, [rowData, rowKey, disabledJson, checkJson, radio, radioValue, expandable, expandableRow, tableCell, headData, align, operate, expandableColSpan, selectCheck, selectRadio, disabledExpandJson, onExpand, disabledArrStatus, showColumns, onClickRow]);
|
|
1714
|
-
|
|
1520
|
+
}, [rowData, rowKey, disabledJson, checkJson, radio, radioValue, expandable, expandableRow, tableCell, headData, align, operate, expandableColSpan, selectCheck, selectRadio, disabledExpandJson, onExpand, disabledArrStatus, showColumns, onClickRow, rowClassMapping]);
|
|
1521
|
+
// 内容memo
|
|
1715
1522
|
var TableBodyContentMemo = useMemo(function () {
|
|
1716
1523
|
return jsxs(Fragment$1, {
|
|
1717
1524
|
children: [TableBodySubjectContentMemo, MoreMemo]
|
|
1718
1525
|
});
|
|
1719
|
-
}, [rowData, rowKey, disabledJson, checkJson, radio, radioValue, expandable, expandableRow, tableCell, headData, align, operate, expandableColSpan, selectCheck, selectRadio, loadMore, loadMoreRender, onClickMore, changePage, loadMoreUrl, disabledExpandJson, onExpand, showMoreBtn, disabledArrStatus, showColumns, onClickRow]);
|
|
1720
|
-
|
|
1526
|
+
}, [rowData, rowKey, disabledJson, checkJson, radio, radioValue, expandable, expandableRow, tableCell, headData, align, operate, expandableColSpan, selectCheck, selectRadio, loadMore, loadMoreRender, onClickMore, changePage, loadMoreUrl, disabledExpandJson, onExpand, showMoreBtn, disabledArrStatus, showColumns, onClickRow, rowClassMapping]);
|
|
1527
|
+
// 处理内容
|
|
1721
1528
|
var handContent = function handContent() {
|
|
1722
1529
|
// 无数据,且不再请求,显示暂无数据
|
|
1723
1530
|
if (rowData.length === 0 && !loadState) return NodataMemo;
|
|
1724
1531
|
return TableBodyContentMemo;
|
|
1725
1532
|
};
|
|
1726
|
-
|
|
1727
1533
|
return jsx(TableBodyElement, Object.assign({
|
|
1728
1534
|
className: handClass()
|
|
1729
1535
|
}, {
|
|
@@ -1733,29 +1539,29 @@ var TableBody = function TableBody(props) {
|
|
|
1733
1539
|
|
|
1734
1540
|
var TableHead = function TableHead(props) {
|
|
1735
1541
|
var paginationType = props.paginationType,
|
|
1736
|
-
|
|
1737
|
-
|
|
1738
|
-
|
|
1739
|
-
|
|
1740
|
-
|
|
1741
|
-
|
|
1742
|
-
|
|
1743
|
-
|
|
1542
|
+
flippingArrow = props.flippingArrow,
|
|
1543
|
+
autoPagination = props.autoPagination,
|
|
1544
|
+
total = props.total,
|
|
1545
|
+
page = props.page,
|
|
1546
|
+
rowsPerPage = props.rowsPerPage,
|
|
1547
|
+
currentRowsPerPage = props.currentRowsPerPage,
|
|
1548
|
+
changePage = props.changePage,
|
|
1549
|
+
changeRowsPerPage = props.changeRowsPerPage;
|
|
1550
|
+
// 改变页面
|
|
1744
1551
|
var changePageCom = function changePageCom(num) {
|
|
1745
1552
|
changePage && changePage(num);
|
|
1746
|
-
};
|
|
1747
|
-
|
|
1748
|
-
|
|
1553
|
+
};
|
|
1554
|
+
// 改变每页显示条数
|
|
1749
1555
|
var changeRowsPerPageCom = function changeRowsPerPageCom(num) {
|
|
1750
1556
|
changeRowsPerPage && changeRowsPerPage(num);
|
|
1751
1557
|
};
|
|
1752
|
-
|
|
1753
1558
|
return jsx("div", Object.assign({
|
|
1754
1559
|
className: 'table-pagination'
|
|
1755
1560
|
}, {
|
|
1756
1561
|
children: jsx(Pagination, {
|
|
1757
1562
|
type: paginationType,
|
|
1758
1563
|
autoType: autoPagination,
|
|
1564
|
+
flippingArrow: flippingArrow,
|
|
1759
1565
|
total: total,
|
|
1760
1566
|
page: page,
|
|
1761
1567
|
rowsPerPage: rowsPerPage,
|
|
@@ -1774,17 +1580,15 @@ styleInject(css_248z$2);
|
|
|
1774
1580
|
|
|
1775
1581
|
var TableContainer = function TableContainer(props) {
|
|
1776
1582
|
var cRef = props.cRef,
|
|
1777
|
-
|
|
1778
|
-
|
|
1779
|
-
|
|
1780
|
-
|
|
1781
|
-
|
|
1583
|
+
className = props.className,
|
|
1584
|
+
style = props.style,
|
|
1585
|
+
children = props.children,
|
|
1586
|
+
otherProps = __rest(props, ["cRef", "className", "style", "children"]);
|
|
1782
1587
|
var handClass = function handClass() {
|
|
1783
1588
|
var str = 'table-container';
|
|
1784
1589
|
if (className) str += ' ' + className;
|
|
1785
1590
|
return str;
|
|
1786
1591
|
};
|
|
1787
|
-
|
|
1788
1592
|
return jsx("div", Object.assign({
|
|
1789
1593
|
className: handClass(),
|
|
1790
1594
|
style: style,
|
|
@@ -1799,18 +1603,16 @@ styleInject(css_248z$1);
|
|
|
1799
1603
|
|
|
1800
1604
|
var TableElement = function TableElement(props) {
|
|
1801
1605
|
var className = props.className,
|
|
1802
|
-
|
|
1803
|
-
|
|
1804
|
-
|
|
1805
|
-
|
|
1806
|
-
|
|
1606
|
+
style = props.style,
|
|
1607
|
+
fixedColumn = props.fixedColumn,
|
|
1608
|
+
children = props.children,
|
|
1609
|
+
otherProps = __rest(props, ["className", "style", "fixedColumn", "children"]);
|
|
1807
1610
|
var handClass = function handClass() {
|
|
1808
1611
|
var str = 'table-element';
|
|
1809
1612
|
if (fixedColumn) str += ' table-element-fixed-column';
|
|
1810
1613
|
if (className) str += ' ' + className;
|
|
1811
1614
|
return str;
|
|
1812
1615
|
};
|
|
1813
|
-
|
|
1814
1616
|
return jsx("table", Object.assign({
|
|
1815
1617
|
className: handClass(),
|
|
1816
1618
|
style: style
|
|
@@ -1823,253 +1625,203 @@ var css_248z = "@charset \"UTF-8\";\n/**\n* @author Hanz\n* @date 2021/10/20 下
|
|
|
1823
1625
|
styleInject(css_248z);
|
|
1824
1626
|
|
|
1825
1627
|
var Table = function Table(propsInit) {
|
|
1826
|
-
var props = useGlobalProps(propsInit, 'Table');
|
|
1827
|
-
|
|
1628
|
+
var props = useGlobalProps(propsInit, 'Table');
|
|
1629
|
+
// 判断浏览器
|
|
1828
1630
|
var Browser = GetBrowserClass();
|
|
1829
|
-
|
|
1830
1631
|
if (Browser === 'ie') {
|
|
1831
1632
|
// IE浏览器没有固定列
|
|
1832
1633
|
props.fixedColumn = false;
|
|
1833
1634
|
}
|
|
1834
|
-
|
|
1835
|
-
|
|
1836
|
-
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
|
|
1840
|
-
|
|
1841
|
-
|
|
1842
|
-
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
|
|
1846
|
-
|
|
1847
|
-
|
|
1848
|
-
|
|
1849
|
-
|
|
1850
|
-
|
|
1851
|
-
|
|
1852
|
-
|
|
1853
|
-
|
|
1854
|
-
|
|
1855
|
-
|
|
1856
|
-
|
|
1857
|
-
|
|
1858
|
-
|
|
1859
|
-
|
|
1860
|
-
|
|
1861
|
-
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
|
|
1869
|
-
|
|
1870
|
-
|
|
1871
|
-
|
|
1872
|
-
|
|
1873
|
-
|
|
1874
|
-
|
|
1875
|
-
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
|
|
1884
|
-
|
|
1885
|
-
|
|
1886
|
-
|
|
1887
|
-
|
|
1888
|
-
|
|
1889
|
-
|
|
1890
|
-
|
|
1891
|
-
|
|
1892
|
-
|
|
1893
|
-
|
|
1894
|
-
|
|
1895
|
-
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
|
|
1908
|
-
|
|
1909
|
-
|
|
1910
|
-
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
|
|
1915
|
-
|
|
1916
|
-
|
|
1917
|
-
|
|
1918
|
-
|
|
1635
|
+
var className = props.className,
|
|
1636
|
+
style = props.style,
|
|
1637
|
+
url = props.url,
|
|
1638
|
+
ctx = props.ctx,
|
|
1639
|
+
emptyProps = props.emptyProps,
|
|
1640
|
+
_props$method = props.method,
|
|
1641
|
+
method = _props$method === void 0 ? 'Get' : _props$method,
|
|
1642
|
+
data = props.data,
|
|
1643
|
+
_props$page = props.page,
|
|
1644
|
+
page = _props$page === void 0 ? 1 : _props$page,
|
|
1645
|
+
_props$size = props.size,
|
|
1646
|
+
size = _props$size === void 0 ? 10 : _props$size,
|
|
1647
|
+
_props$sizeArr = props.sizeArr,
|
|
1648
|
+
sizeArr = _props$sizeArr === void 0 ? [10, 20, 30] : _props$sizeArr,
|
|
1649
|
+
search = props.search,
|
|
1650
|
+
_props$pagination = props.pagination,
|
|
1651
|
+
pagination = _props$pagination === void 0 ? true : _props$pagination,
|
|
1652
|
+
_props$paginationType = props.paginationType,
|
|
1653
|
+
paginationType = _props$paginationType === void 0 ? 'complex' : _props$paginationType,
|
|
1654
|
+
flippingArrow = props.flippingArrow,
|
|
1655
|
+
_props$autoPagination = props.autoPagination,
|
|
1656
|
+
autoPagination = _props$autoPagination === void 0 ? true : _props$autoPagination,
|
|
1657
|
+
tableCell = props.tableCell,
|
|
1658
|
+
requestCallback = props.requestCallback,
|
|
1659
|
+
checkDefaultValue = props.checkDefaultValue,
|
|
1660
|
+
setCheck = props.setCheck,
|
|
1661
|
+
radioDefaultValue = props.radioDefaultValue,
|
|
1662
|
+
setRadio = props.setRadio,
|
|
1663
|
+
refresh = props.refresh,
|
|
1664
|
+
disabledArr = props.disabledArr,
|
|
1665
|
+
disabledArrStatus = props.disabledArrStatus,
|
|
1666
|
+
_props$headData = props.headData,
|
|
1667
|
+
headData = _props$headData === void 0 ? [] : _props$headData,
|
|
1668
|
+
sortTableRadio = props.sortTableRadio,
|
|
1669
|
+
_props$sortTable = props.sortTable,
|
|
1670
|
+
sortTable = _props$sortTable === void 0 ? false : _props$sortTable,
|
|
1671
|
+
_props$filter = props.filter,
|
|
1672
|
+
filter = _props$filter === void 0 ? false : _props$filter,
|
|
1673
|
+
expandable = props.expandable,
|
|
1674
|
+
_props$rowKey = props.rowKey,
|
|
1675
|
+
rowKey = _props$rowKey === void 0 ? 'key' : _props$rowKey,
|
|
1676
|
+
_props$check = props.check,
|
|
1677
|
+
check = _props$check === void 0 ? false : _props$check,
|
|
1678
|
+
_props$radio = props.radio,
|
|
1679
|
+
radio = _props$radio === void 0 ? false : _props$radio,
|
|
1680
|
+
_props$checkRememberP = props.checkRememberPage,
|
|
1681
|
+
checkRememberPage = _props$checkRememberP === void 0 ? false : _props$checkRememberP,
|
|
1682
|
+
_props$align = props.align,
|
|
1683
|
+
align = _props$align === void 0 ? 'left' : _props$align,
|
|
1684
|
+
paramsCallback = props.paramsCallback,
|
|
1685
|
+
operate = props.operate,
|
|
1686
|
+
_props$showColumns = props.showColumns,
|
|
1687
|
+
showColumns = _props$showColumns === void 0 ? 'inside' : _props$showColumns,
|
|
1688
|
+
_props$fixedTable = props.fixedTable,
|
|
1689
|
+
fixedTable = _props$fixedTable === void 0 ? true : _props$fixedTable,
|
|
1690
|
+
_props$fixedColumn = props.fixedColumn,
|
|
1691
|
+
fixedColumn = _props$fixedColumn === void 0 ? true : _props$fixedColumn,
|
|
1692
|
+
_props$dragColumn = props.dragColumn,
|
|
1693
|
+
dragColumn = _props$dragColumn === void 0 ? true : _props$dragColumn,
|
|
1694
|
+
formatter = props.formatter,
|
|
1695
|
+
_props$lineHeight = props.lineHeight,
|
|
1696
|
+
lineHeight = _props$lineHeight === void 0 ? 56 : _props$lineHeight,
|
|
1697
|
+
_props$lineWidth = props.lineWidth,
|
|
1698
|
+
lineWidth = _props$lineWidth === void 0 ? 80 : _props$lineWidth,
|
|
1699
|
+
_props$autoSize = props.autoSize,
|
|
1700
|
+
autoSize = _props$autoSize === void 0 ? true : _props$autoSize,
|
|
1701
|
+
_props$loadMore = props.loadMore,
|
|
1702
|
+
loadMore = _props$loadMore === void 0 ? false : _props$loadMore,
|
|
1703
|
+
loadMoreRender = props.loadMoreRender,
|
|
1704
|
+
onClickMore = props.onClickMore,
|
|
1705
|
+
expandValue = props.expandValue,
|
|
1706
|
+
expandMultiple = props.expandMultiple,
|
|
1707
|
+
disabledExpand = props.disabledExpand,
|
|
1708
|
+
onExpand = props.onExpand,
|
|
1709
|
+
_props$defaultExpandA = props.defaultExpandAllRows,
|
|
1710
|
+
defaultExpandAllRows = _props$defaultExpandA === void 0 ? false : _props$defaultExpandA,
|
|
1711
|
+
onClickColumns = props.onClickColumns,
|
|
1712
|
+
_props$beyondText = props.beyondText,
|
|
1713
|
+
beyondText = _props$beyondText === void 0 ? true : _props$beyondText,
|
|
1714
|
+
loading = props.loading,
|
|
1715
|
+
defaultSortValue = props.defaultSortValue,
|
|
1716
|
+
defaultFilterValue = props.defaultFilterValue,
|
|
1717
|
+
searchKeyName = props.searchKeyName,
|
|
1718
|
+
filterSearchCallback = props.filterSearchCallback,
|
|
1719
|
+
onClickRow = props.onClickRow,
|
|
1720
|
+
rowClassMapping = props.rowClassMapping;
|
|
1919
1721
|
var intl = useFormatMessage('Table', localeJson);
|
|
1920
1722
|
var dayNum = props.expirationTime ? props.expirationTime === 0 ? 100000000 : props.expirationTime : 7; // 过期天数
|
|
1921
|
-
|
|
1922
1723
|
var _useState = useState(props.page !== undefined ? props.page : 1),
|
|
1923
|
-
|
|
1924
|
-
|
|
1925
|
-
|
|
1926
|
-
|
|
1927
|
-
|
|
1724
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
1725
|
+
pageCom = _useState2[0],
|
|
1726
|
+
setPageCom = _useState2[1]; // 页数
|
|
1928
1727
|
var _useState3 = useState(null),
|
|
1929
|
-
|
|
1930
|
-
|
|
1931
|
-
|
|
1932
|
-
|
|
1933
|
-
|
|
1728
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
1729
|
+
sizeCom = _useState4[0],
|
|
1730
|
+
setSizeCom = _useState4[1]; // 每页条数
|
|
1934
1731
|
var _useState5 = useState(sizeArr),
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
1938
|
-
|
|
1939
|
-
|
|
1732
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
1733
|
+
sizeArrCom = _useState6[0],
|
|
1734
|
+
setSizeArrCom = _useState6[1]; // 每页条数数组
|
|
1940
1735
|
var _useState7 = useState(0),
|
|
1941
|
-
|
|
1942
|
-
|
|
1943
|
-
|
|
1944
|
-
|
|
1945
|
-
|
|
1736
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
1737
|
+
total = _useState8[0],
|
|
1738
|
+
setTotal = _useState8[1]; // 总数
|
|
1946
1739
|
var _useState9 = useState([]),
|
|
1947
|
-
|
|
1948
|
-
|
|
1949
|
-
|
|
1950
|
-
|
|
1951
|
-
|
|
1740
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
1741
|
+
rowData = _useState10[0],
|
|
1742
|
+
setRowData = _useState10[1]; // 当前页数据
|
|
1952
1743
|
var _useState11 = useState({}),
|
|
1953
|
-
|
|
1954
|
-
|
|
1955
|
-
|
|
1956
|
-
|
|
1957
|
-
|
|
1744
|
+
_useState12 = _slicedToArray(_useState11, 2),
|
|
1745
|
+
rowDataJson = _useState12[0],
|
|
1746
|
+
setRowDataJson = _useState12[1]; // 当前页数据对象
|
|
1958
1747
|
var _useState13 = useState({}),
|
|
1959
|
-
|
|
1960
|
-
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1748
|
+
_useState14 = _slicedToArray(_useState13, 2),
|
|
1749
|
+
totalDataJson = _useState14[0],
|
|
1750
|
+
setTotalDataJson = _useState14[1]; // 数据总数对象--用来分页记录数据的
|
|
1964
1751
|
var _useState15 = useState(Object.values(defaultSortValue || {})),
|
|
1965
|
-
|
|
1966
|
-
|
|
1967
|
-
|
|
1968
|
-
|
|
1969
|
-
|
|
1752
|
+
_useState16 = _slicedToArray(_useState15, 2),
|
|
1753
|
+
orderTypeArr = _useState16[0],
|
|
1754
|
+
setOrderTypeArr = _useState16[1]; // 排序类型
|
|
1970
1755
|
var _useState17 = useState(Object.keys(defaultSortValue || {})),
|
|
1971
|
-
|
|
1972
|
-
|
|
1973
|
-
|
|
1974
|
-
|
|
1975
|
-
|
|
1756
|
+
_useState18 = _slicedToArray(_useState17, 2),
|
|
1757
|
+
orderFieldArr = _useState18[0],
|
|
1758
|
+
setOrderFieldArr = _useState18[1]; // 排序字段
|
|
1976
1759
|
var _useState19 = useState('not'),
|
|
1977
|
-
|
|
1978
|
-
|
|
1979
|
-
|
|
1980
|
-
|
|
1981
|
-
|
|
1760
|
+
_useState20 = _slicedToArray(_useState19, 2),
|
|
1761
|
+
headSelectStatus = _useState20[0],
|
|
1762
|
+
setHeadSelectStatus = _useState20[1]; // 表格头复选框状态
|
|
1982
1763
|
var _useState21 = useState({}),
|
|
1983
|
-
|
|
1984
|
-
|
|
1985
|
-
|
|
1986
|
-
|
|
1987
|
-
|
|
1764
|
+
_useState22 = _slicedToArray(_useState21, 2),
|
|
1765
|
+
checkJson = _useState22[0],
|
|
1766
|
+
setCheckJson = _useState22[1]; // 多选 选中的数据
|
|
1988
1767
|
var _useState23 = useState(),
|
|
1989
|
-
|
|
1990
|
-
|
|
1991
|
-
|
|
1992
|
-
|
|
1993
|
-
|
|
1768
|
+
_useState24 = _slicedToArray(_useState23, 2),
|
|
1769
|
+
radioValue = _useState24[0],
|
|
1770
|
+
setRadioValue = _useState24[1]; // 单选 选中的数据
|
|
1994
1771
|
var _useState25 = useState({}),
|
|
1995
|
-
|
|
1996
|
-
|
|
1997
|
-
|
|
1998
|
-
|
|
1999
|
-
|
|
1772
|
+
_useState26 = _slicedToArray(_useState25, 2),
|
|
1773
|
+
disabledJson = _useState26[0],
|
|
1774
|
+
setDisabledJson = _useState26[1]; // 禁用对象
|
|
2000
1775
|
var _useState27 = useState({}),
|
|
2001
|
-
|
|
2002
|
-
|
|
2003
|
-
|
|
2004
|
-
|
|
2005
|
-
|
|
1776
|
+
_useState28 = _slicedToArray(_useState27, 2),
|
|
1777
|
+
originalHead = _useState28[0],
|
|
1778
|
+
setOriginalHead = _useState28[1]; // 接口原数据表头json
|
|
2006
1779
|
var _useState29 = useState([]),
|
|
2007
|
-
|
|
2008
|
-
|
|
2009
|
-
|
|
2010
|
-
|
|
2011
|
-
|
|
1780
|
+
_useState30 = _slicedToArray(_useState29, 2),
|
|
1781
|
+
showHeadList = _useState30[0],
|
|
1782
|
+
setShowHeadList = _useState30[1]; // 显示列下拉值 所有头部的配置
|
|
2012
1783
|
var _useState31 = useState([]),
|
|
2013
|
-
|
|
2014
|
-
|
|
2015
|
-
|
|
2016
|
-
|
|
2017
|
-
|
|
1784
|
+
_useState32 = _slicedToArray(_useState31, 2),
|
|
1785
|
+
headDataCom = _useState32[0],
|
|
1786
|
+
setHeadDataCom = _useState32[1]; // 表格当前显示列 集合本地数据
|
|
2018
1787
|
var _useState33 = useState(Object.assign({}, defaultFilterValue)),
|
|
2019
|
-
|
|
2020
|
-
|
|
2021
|
-
|
|
2022
|
-
|
|
2023
|
-
|
|
1788
|
+
_useState34 = _slicedToArray(_useState33, 2),
|
|
1789
|
+
selectFilterCom = _useState34[0],
|
|
1790
|
+
setSelectFilterCom = _useState34[1]; // 过滤值
|
|
2024
1791
|
var _useState35 = useState(true),
|
|
2025
|
-
|
|
2026
|
-
|
|
2027
|
-
|
|
2028
|
-
|
|
2029
|
-
|
|
1792
|
+
_useState36 = _slicedToArray(_useState35, 2),
|
|
1793
|
+
loadState = _useState36[0],
|
|
1794
|
+
setLoadState = _useState36[1]; // 加载进度条状态
|
|
2030
1795
|
var _useState37 = useState(false),
|
|
2031
|
-
|
|
2032
|
-
|
|
2033
|
-
|
|
2034
|
-
|
|
1796
|
+
_useState38 = _slicedToArray(_useState37, 2),
|
|
1797
|
+
loadMoreUrl = _useState38[0],
|
|
1798
|
+
setLoadMoreUrl = _useState38[1];
|
|
2035
1799
|
var _useState39 = useState(Math.random().toString()),
|
|
2036
|
-
|
|
2037
|
-
|
|
2038
|
-
|
|
1800
|
+
_useState40 = _slicedToArray(_useState39, 1),
|
|
1801
|
+
reqId = _useState40[0];
|
|
2039
1802
|
var _useState41 = useState(),
|
|
2040
|
-
|
|
2041
|
-
|
|
2042
|
-
|
|
2043
|
-
|
|
1803
|
+
_useState42 = _slicedToArray(_useState41, 2),
|
|
1804
|
+
refreshCom = _useState42[0],
|
|
1805
|
+
setRefreshCom = _useState42[1];
|
|
2044
1806
|
var _useState43 = useState(0),
|
|
2045
|
-
|
|
2046
|
-
|
|
2047
|
-
|
|
2048
|
-
|
|
2049
|
-
|
|
1807
|
+
_useState44 = _slicedToArray(_useState43, 2),
|
|
1808
|
+
tableMinWidth = _useState44[0],
|
|
1809
|
+
setTableMinWidth = _useState44[1]; // 表格最小width
|
|
2050
1810
|
var _useState45 = useState({}),
|
|
2051
|
-
|
|
2052
|
-
|
|
2053
|
-
|
|
2054
|
-
|
|
2055
|
-
|
|
1811
|
+
_useState46 = _slicedToArray(_useState45, 2),
|
|
1812
|
+
posFixed = _useState46[0],
|
|
1813
|
+
setPosFixed = _useState46[1]; // 固定位置
|
|
2056
1814
|
var _useState47 = useState({}),
|
|
2057
|
-
|
|
2058
|
-
|
|
2059
|
-
|
|
2060
|
-
|
|
2061
|
-
|
|
1815
|
+
_useState48 = _slicedToArray(_useState47, 2),
|
|
1816
|
+
headDataConfig = _useState48[0],
|
|
1817
|
+
setHeadDataConfig = _useState48[1]; // 表头配置
|
|
2062
1818
|
var containerRef = useRef(); // 表格内容高度
|
|
2063
|
-
|
|
2064
1819
|
var tableRef = useRef(); // 表格
|
|
2065
|
-
|
|
2066
1820
|
var constData = useRef({
|
|
2067
1821
|
page: props.page !== undefined ? props.page : 1,
|
|
2068
1822
|
headDataConfig: {}
|
|
2069
1823
|
}); // 存储常量
|
|
2070
|
-
|
|
2071
1824
|
constData.current.loadMoreUrl = loadMore && url; // 用来判断加载更多请求是否放在表格里面
|
|
2072
|
-
|
|
2073
1825
|
constData.current.search = search;
|
|
2074
1826
|
constData.current.url = url;
|
|
2075
1827
|
constData.current.orderTypeArr = orderTypeArr;
|
|
@@ -2096,17 +1848,16 @@ var Table = function Table(propsInit) {
|
|
|
2096
1848
|
}, [loading]);
|
|
2097
1849
|
useEffect(function () {
|
|
2098
1850
|
setLoadMoreUrl(Boolean(loadMore && url));
|
|
2099
|
-
}, [loadMore, url]);
|
|
2100
|
-
|
|
1851
|
+
}, [loadMore, url]);
|
|
1852
|
+
// 监听page
|
|
2101
1853
|
useEffect(function () {
|
|
2102
1854
|
if (props.page !== undefined) {
|
|
2103
1855
|
handPage(props.page);
|
|
2104
1856
|
}
|
|
2105
|
-
}, [page]);
|
|
2106
|
-
|
|
1857
|
+
}, [page]);
|
|
1858
|
+
// 自动计算表格一页展示条数
|
|
2107
1859
|
useEffect(function () {
|
|
2108
1860
|
if (!autoSize) return handSize(size);
|
|
2109
|
-
|
|
2110
1861
|
if (props.size) {
|
|
2111
1862
|
handSize(size);
|
|
2112
1863
|
} else {
|
|
@@ -2115,27 +1866,25 @@ var Table = function Table(propsInit) {
|
|
|
2115
1866
|
if (props.loadMore) height -= 56;
|
|
2116
1867
|
var num = Math.floor(height / lineHeight);
|
|
2117
1868
|
var columnsNUmber = num < 1 ? size : num;
|
|
2118
|
-
|
|
2119
1869
|
if (sizeArr.indexOf(columnsNUmber) === -1) {
|
|
2120
|
-
sizeArr.unshift(columnsNUmber);
|
|
2121
|
-
|
|
1870
|
+
sizeArr.unshift(columnsNUmber);
|
|
1871
|
+
// 数组排序
|
|
2122
1872
|
sizeArr.sort(function (a, b) {
|
|
2123
1873
|
return a - b;
|
|
2124
1874
|
});
|
|
2125
1875
|
setSizeArrCom(sizeArr);
|
|
2126
1876
|
}
|
|
2127
|
-
|
|
2128
1877
|
handSize(columnsNUmber);
|
|
2129
1878
|
}
|
|
2130
1879
|
}
|
|
2131
|
-
}, [size, autoSize]);
|
|
2132
|
-
|
|
1880
|
+
}, [size, autoSize]);
|
|
1881
|
+
// 处理表格头部
|
|
2133
1882
|
useEffect(function () {
|
|
2134
1883
|
if (props.headData !== undefined) {
|
|
2135
1884
|
handInitHead(headData, false);
|
|
2136
1885
|
}
|
|
2137
|
-
}, [headData]);
|
|
2138
|
-
|
|
1886
|
+
}, [headData]);
|
|
1887
|
+
// 设置总数对象
|
|
2139
1888
|
useEffect(function () {
|
|
2140
1889
|
if (data) {
|
|
2141
1890
|
var dataHand = handLocalData();
|
|
@@ -2149,51 +1898,45 @@ var Table = function Table(propsInit) {
|
|
|
2149
1898
|
if (!constData.current.initReq) return;
|
|
2150
1899
|
handPage(1);
|
|
2151
1900
|
constData.current.historyData = [];
|
|
2152
|
-
}, [search, url]);
|
|
2153
|
-
|
|
1901
|
+
}, [search, url]);
|
|
1902
|
+
// 表格数据获取赋值
|
|
2154
1903
|
useEffect(function () {
|
|
2155
1904
|
clearTimeout(constData.current.reqTimer);
|
|
2156
1905
|
if (constData.current.url) Cancel(reqId);
|
|
2157
1906
|
constData.current.reqTimer = setTimeout(function () {
|
|
2158
1907
|
constData.current.initReq = true;
|
|
2159
|
-
|
|
2160
1908
|
if (constData.current.url) {
|
|
2161
1909
|
// 提交参数
|
|
2162
1910
|
var postBody = {};
|
|
2163
|
-
|
|
2164
1911
|
if (pagination) {
|
|
2165
1912
|
if (constData.current.page === null || constData.current.size === null) return;
|
|
2166
1913
|
postBody.size = constData.current.size;
|
|
2167
1914
|
postBody.page = constData.current.page;
|
|
2168
1915
|
}
|
|
2169
|
-
|
|
2170
1916
|
if (orderFieldArr.length > 0) {
|
|
2171
1917
|
postBody.orderField = orderFieldArr;
|
|
2172
|
-
postBody.orderType = orderTypeArr;
|
|
2173
|
-
|
|
1918
|
+
postBody.orderType = orderTypeArr;
|
|
1919
|
+
// 单个排序
|
|
2174
1920
|
if (props.sortTableRadio) {
|
|
2175
1921
|
postBody.orderField = orderFieldArr[0];
|
|
2176
1922
|
postBody.orderType = orderTypeArr[0];
|
|
2177
1923
|
}
|
|
2178
1924
|
}
|
|
2179
|
-
|
|
2180
1925
|
if (selectFilterCom && Object.keys(selectFilterCom).length > 0) {
|
|
2181
1926
|
postBody.filter = handFilterReq();
|
|
2182
1927
|
}
|
|
2183
|
-
|
|
2184
1928
|
if (constData.current.search) {
|
|
2185
1929
|
if (_typeof(constData.current.search) === 'object') {
|
|
2186
1930
|
postBody = Object.assign(Object.assign({}, postBody), constData.current.search);
|
|
2187
1931
|
}
|
|
2188
1932
|
}
|
|
2189
|
-
|
|
2190
1933
|
var obj = {
|
|
2191
1934
|
url: constData.current.url,
|
|
2192
1935
|
ctx: ctx,
|
|
2193
1936
|
method: method,
|
|
2194
1937
|
data: postBody
|
|
2195
|
-
};
|
|
2196
|
-
|
|
1938
|
+
};
|
|
1939
|
+
// get 请求
|
|
2197
1940
|
if (method === 'Get') {
|
|
2198
1941
|
if (paramsCallback) {
|
|
2199
1942
|
paramsCallback(obj, function (handObj) {
|
|
@@ -2212,23 +1955,20 @@ var Table = function Table(propsInit) {
|
|
|
2212
1955
|
method: method
|
|
2213
1956
|
});
|
|
2214
1957
|
}
|
|
2215
|
-
}
|
|
2216
|
-
|
|
2217
|
-
|
|
1958
|
+
}
|
|
1959
|
+
// post 请求
|
|
2218
1960
|
if (method === 'Post') {
|
|
2219
1961
|
if (paramsCallback) paramsCallback(obj, function (handObj) {
|
|
2220
1962
|
requestData(handObj);
|
|
2221
1963
|
});else requestData(obj);
|
|
2222
1964
|
}
|
|
2223
1965
|
}
|
|
2224
|
-
|
|
2225
1966
|
if (constData.current.data) {
|
|
2226
1967
|
var dataT = handLocalData();
|
|
2227
1968
|
dataT = filterSearchData(dataT); // 过滤数据
|
|
2228
|
-
|
|
2229
1969
|
if (pagination) {
|
|
2230
|
-
if (constData.current.page === null || constData.current.size === null) return;
|
|
2231
|
-
|
|
1970
|
+
if (constData.current.page === null || constData.current.size === null) return;
|
|
1971
|
+
// 分页
|
|
2232
1972
|
var sliceData = dataT.slice((constData.current.page - 1) * constData.current.size, (constData.current.page - 1) * constData.current.size + constData.current.size);
|
|
2233
1973
|
setNowPageData(sliceData);
|
|
2234
1974
|
setTotal(dataT.length);
|
|
@@ -2236,61 +1976,52 @@ var Table = function Table(propsInit) {
|
|
|
2236
1976
|
// 不分页
|
|
2237
1977
|
setNowPageData(dataT);
|
|
2238
1978
|
}
|
|
2239
|
-
|
|
2240
1979
|
if (props.loading === undefined) setLoadState(false);
|
|
2241
1980
|
}
|
|
2242
1981
|
}, 50);
|
|
2243
|
-
}, [refresh, refreshCom]);
|
|
2244
|
-
|
|
1982
|
+
}, [refresh, refreshCom]);
|
|
1983
|
+
// 单选赋值默认值
|
|
2245
1984
|
useEffect(function () {
|
|
2246
1985
|
if (radioDefaultValue !== undefined && radioDefaultValue !== radioValue) {
|
|
2247
1986
|
setRadioValue(radioDefaultValue);
|
|
2248
1987
|
}
|
|
2249
|
-
}, [radioDefaultValue]);
|
|
2250
|
-
|
|
1988
|
+
}, [radioDefaultValue]);
|
|
1989
|
+
// 复选框赋默认值
|
|
2251
1990
|
useEffect(function () {
|
|
2252
1991
|
if (checkDefaultValue) {
|
|
2253
1992
|
var json = {};
|
|
2254
|
-
|
|
2255
1993
|
for (var i = 0, l = checkDefaultValue.length; i < l; i++) {
|
|
2256
1994
|
var item = checkDefaultValue[i];
|
|
2257
1995
|
json[item] = true;
|
|
2258
1996
|
}
|
|
2259
|
-
|
|
2260
1997
|
setCheckJson(json);
|
|
2261
1998
|
}
|
|
2262
|
-
}, [checkDefaultValue]);
|
|
2263
|
-
|
|
1999
|
+
}, [checkDefaultValue]);
|
|
2000
|
+
// 设置禁用对象
|
|
2264
2001
|
useEffect(function () {
|
|
2265
2002
|
if (disabledArr) {
|
|
2266
2003
|
var json = {};
|
|
2267
|
-
|
|
2268
2004
|
for (var i = 0, l = disabledArr.length; i < l; i++) {
|
|
2269
2005
|
var item = disabledArr[i];
|
|
2270
2006
|
json[item] = true;
|
|
2271
2007
|
}
|
|
2272
|
-
|
|
2273
2008
|
setDisabledJson(json);
|
|
2274
2009
|
}
|
|
2275
|
-
}, [disabledArr]);
|
|
2276
|
-
|
|
2010
|
+
}, [disabledArr]);
|
|
2011
|
+
// 计算复选框状态
|
|
2277
2012
|
useEffect(function () {
|
|
2278
2013
|
if (Object.keys(checkJson).length === 0) {
|
|
2279
2014
|
// 全不选
|
|
2280
2015
|
setHeadSelectStatus('not');
|
|
2281
2016
|
} else {
|
|
2282
2017
|
var arr = Object.keys(rowDataJson);
|
|
2283
|
-
|
|
2284
2018
|
if (arr.length === 0) {
|
|
2285
2019
|
return setHeadSelectStatus('not');
|
|
2286
2020
|
}
|
|
2287
|
-
|
|
2288
2021
|
var numTotal = arr.length;
|
|
2289
2022
|
var num = 0;
|
|
2290
|
-
|
|
2291
2023
|
for (var i = 0, l = arr.length; i < l; i++) {
|
|
2292
2024
|
var key = arr[i];
|
|
2293
|
-
|
|
2294
2025
|
if (disabledJson[key]) {
|
|
2295
2026
|
numTotal--;
|
|
2296
2027
|
} else {
|
|
@@ -2299,55 +2030,44 @@ var Table = function Table(propsInit) {
|
|
|
2299
2030
|
}
|
|
2300
2031
|
}
|
|
2301
2032
|
}
|
|
2302
|
-
|
|
2303
2033
|
if (num === 0) {
|
|
2304
2034
|
// 全不选
|
|
2305
2035
|
return setHeadSelectStatus('not');
|
|
2306
2036
|
}
|
|
2307
|
-
|
|
2308
2037
|
if (num === numTotal) {
|
|
2309
2038
|
// 全选
|
|
2310
2039
|
return setHeadSelectStatus('all');
|
|
2311
2040
|
}
|
|
2312
|
-
|
|
2313
2041
|
if (num < numTotal) {
|
|
2314
2042
|
// 半选
|
|
2315
2043
|
return setHeadSelectStatus('half');
|
|
2316
2044
|
}
|
|
2317
2045
|
}
|
|
2318
|
-
}, [checkJson, rowData, disabledJson]);
|
|
2319
|
-
|
|
2046
|
+
}, [checkJson, rowData, disabledJson]);
|
|
2047
|
+
// 表格更新计算是否有滚动条
|
|
2320
2048
|
useEffect(function () {
|
|
2321
2049
|
tableBoxScroll({
|
|
2322
2050
|
target: containerRef.current
|
|
2323
2051
|
});
|
|
2324
2052
|
});
|
|
2325
2053
|
/** 处理本地data */
|
|
2326
|
-
|
|
2327
2054
|
var handLocalData = function handLocalData() {
|
|
2328
2055
|
var _a;
|
|
2329
|
-
|
|
2330
2056
|
var dataT = [];
|
|
2331
|
-
|
|
2332
2057
|
if (constData.current.data instanceof Array) {
|
|
2333
2058
|
dataT = constData.current.data;
|
|
2334
2059
|
} else {
|
|
2335
2060
|
dataT = (_a = constData.current.data) === null || _a === void 0 ? void 0 : _a.list;
|
|
2336
2061
|
}
|
|
2337
|
-
|
|
2338
2062
|
return dataT;
|
|
2339
2063
|
};
|
|
2340
2064
|
/** 本地数据过滤搜索数据 */
|
|
2341
|
-
|
|
2342
|
-
|
|
2343
2065
|
var filterSearchData = function filterSearchData(arr) {
|
|
2344
2066
|
var filterKeys = Object.keys(constData.current.selectFilterCom || {});
|
|
2345
2067
|
var handArr = [];
|
|
2346
|
-
|
|
2347
2068
|
for (var i = 0, l = arr.length; i < l; i++) {
|
|
2348
2069
|
var item = arr[i];
|
|
2349
2070
|
var bol = true;
|
|
2350
|
-
|
|
2351
2071
|
if (constData.current.filterSearchCallback) {
|
|
2352
2072
|
// 自定义过滤方法
|
|
2353
2073
|
bol = constData.current.filterSearchCallback(item, {
|
|
@@ -2359,40 +2079,32 @@ var Table = function Table(propsInit) {
|
|
|
2359
2079
|
for (var j = 0, k = filterKeys.length; j < k; j++) {
|
|
2360
2080
|
var name = filterKeys[j];
|
|
2361
2081
|
var filterVal = constData.current.selectFilterCom[name];
|
|
2362
|
-
var val = item[name];
|
|
2363
|
-
|
|
2082
|
+
var val = item[name];
|
|
2083
|
+
// 不满足当前过滤的数据,过滤掉
|
|
2364
2084
|
if (filterVal.length > 0 && filterVal.indexOf(val) === -1) {
|
|
2365
2085
|
bol = false;
|
|
2366
2086
|
continue;
|
|
2367
2087
|
}
|
|
2368
|
-
}
|
|
2369
|
-
|
|
2370
|
-
|
|
2088
|
+
}
|
|
2089
|
+
// 搜索条件
|
|
2371
2090
|
if (bol) {
|
|
2372
2091
|
bol = handLocalSearch(item);
|
|
2373
2092
|
}
|
|
2374
2093
|
}
|
|
2375
|
-
|
|
2376
2094
|
if (bol) handArr.push(item);
|
|
2377
2095
|
}
|
|
2378
|
-
|
|
2379
2096
|
return handArr;
|
|
2380
2097
|
};
|
|
2381
2098
|
/** 处理本地搜索, 返回true满足搜索条件 */
|
|
2382
|
-
|
|
2383
|
-
|
|
2384
2099
|
var handLocalSearch = function handLocalSearch(item) {
|
|
2385
2100
|
var searchKey;
|
|
2386
|
-
|
|
2387
2101
|
if (constData.current.search && typeof constData.current.search !== "string" && constData.current.search.searchKey) {
|
|
2388
2102
|
searchKey = constData.current.search.searchKey;
|
|
2389
2103
|
}
|
|
2390
|
-
|
|
2391
2104
|
if (searchKey !== undefined && constData.current.searchKeyName && constData.current.searchKeyName.length > 0) {
|
|
2392
2105
|
for (var i = 0, l = constData.current.searchKeyName.length; i < l; i++) {
|
|
2393
2106
|
var name = constData.current.searchKeyName[i];
|
|
2394
2107
|
var nameVal = item[name];
|
|
2395
|
-
|
|
2396
2108
|
if (nameVal.indexOf(searchKey) !== -1) {
|
|
2397
2109
|
// 存在一项就满足
|
|
2398
2110
|
return true;
|
|
@@ -2401,41 +2113,31 @@ var Table = function Table(propsInit) {
|
|
|
2401
2113
|
} else {
|
|
2402
2114
|
return true;
|
|
2403
2115
|
}
|
|
2404
|
-
|
|
2405
2116
|
return false;
|
|
2406
2117
|
};
|
|
2407
2118
|
/** 设置size */
|
|
2408
|
-
|
|
2409
|
-
|
|
2410
2119
|
var handSize = function handSize(num) {
|
|
2411
2120
|
constData.current.size = num;
|
|
2412
2121
|
setSizeCom(num);
|
|
2413
2122
|
setRefreshCom(Math.random());
|
|
2414
2123
|
};
|
|
2415
2124
|
/** 本地显示列key */
|
|
2416
|
-
|
|
2417
|
-
|
|
2418
2125
|
var getTableHeadKey = function getTableHeadKey() {
|
|
2419
2126
|
// 自定义key
|
|
2420
2127
|
if (props.tableKey) {
|
|
2421
2128
|
return props.tableKey;
|
|
2422
|
-
}
|
|
2423
|
-
|
|
2424
|
-
|
|
2129
|
+
}
|
|
2130
|
+
// 本地数据
|
|
2425
2131
|
if (props.data) {
|
|
2426
2132
|
return window.location.origin + window.location.pathname + window.location.hash;
|
|
2427
|
-
}
|
|
2428
|
-
|
|
2429
|
-
|
|
2133
|
+
}
|
|
2134
|
+
// url
|
|
2430
2135
|
if (props.url) {
|
|
2431
2136
|
return props.url + '_' + (props.method || 'Get');
|
|
2432
2137
|
}
|
|
2433
|
-
|
|
2434
2138
|
return '';
|
|
2435
2139
|
};
|
|
2436
2140
|
/** 获取储存的表头列 */
|
|
2437
|
-
|
|
2438
|
-
|
|
2439
2141
|
var getLocalStorageHeadCom = function getLocalStorageHeadCom() {
|
|
2440
2142
|
if (props.rememberColumns === false) return {};
|
|
2441
2143
|
var json = getLocalStorageSelectHead(getTableHeadKey(), dayNum);
|
|
@@ -2445,8 +2147,6 @@ var Table = function Table(propsInit) {
|
|
|
2445
2147
|
* 设置本地表格列
|
|
2446
2148
|
*
|
|
2447
2149
|
* */
|
|
2448
|
-
|
|
2449
|
-
|
|
2450
2150
|
var setLocalStorageHeadCom = function setLocalStorageHeadCom(obj) {
|
|
2451
2151
|
if (props.rememberColumns === false) return;
|
|
2452
2152
|
var localStorageData = getLocalStorageHeadCom();
|
|
@@ -2455,27 +2155,23 @@ var Table = function Table(propsInit) {
|
|
|
2455
2155
|
headDataConfig: localStorageData.headDataConfig || {},
|
|
2456
2156
|
storageTime: new Date().getTime(),
|
|
2457
2157
|
validity: dayNum * (60 * 60 * 24)
|
|
2458
|
-
};
|
|
2459
|
-
|
|
2158
|
+
};
|
|
2159
|
+
// 设置固定列
|
|
2460
2160
|
if (obj.setFixed) {
|
|
2461
2161
|
var selectHeadJson = ArrayToObject('name', obj.headArr || []);
|
|
2462
|
-
|
|
2463
2162
|
for (var i = 0, l = showHeadList.length; i < l; i++) {
|
|
2464
2163
|
var item = showHeadList[i];
|
|
2465
2164
|
var name = item.name || '';
|
|
2466
2165
|
json.headName[name] = false;
|
|
2467
|
-
|
|
2468
2166
|
if (selectHeadJson[name]) {
|
|
2469
2167
|
json.headName[name] = true;
|
|
2470
2168
|
}
|
|
2471
2169
|
}
|
|
2472
|
-
}
|
|
2473
|
-
|
|
2474
|
-
|
|
2170
|
+
}
|
|
2171
|
+
// 设置拖动列
|
|
2475
2172
|
if (obj.setDrag) {
|
|
2476
2173
|
json.headDataConfig = obj.headDataConfig || {};
|
|
2477
2174
|
}
|
|
2478
|
-
|
|
2479
2175
|
setLocalStorageSelectHead(getTableHeadKey(), json);
|
|
2480
2176
|
};
|
|
2481
2177
|
/**
|
|
@@ -2484,15 +2180,12 @@ var Table = function Table(propsInit) {
|
|
|
2484
2180
|
* @param showHeadArr {HeadDataProps[]} 显示列与本地数据集合
|
|
2485
2181
|
* @param localHead {HeadLocalStorageItem} 本地显示列数据
|
|
2486
2182
|
* */
|
|
2487
|
-
|
|
2488
|
-
|
|
2489
2183
|
var handHeadShow = function handHeadShow(item, showHeadArr, localHead) {
|
|
2490
2184
|
if (showColumns === false) {
|
|
2491
2185
|
// 如果不显示选择列,全部显示
|
|
2492
2186
|
showHeadArr.push(item);
|
|
2493
2187
|
return;
|
|
2494
2188
|
}
|
|
2495
|
-
|
|
2496
2189
|
if (props.rememberColumns === false) {
|
|
2497
2190
|
// 不记住列
|
|
2498
2191
|
if (item.selected) showHeadArr.push(item);
|
|
@@ -2501,7 +2194,6 @@ var Table = function Table(propsInit) {
|
|
|
2501
2194
|
var nameSelectJson = localHead.headName || {};
|
|
2502
2195
|
var name = item.name || '';
|
|
2503
2196
|
var nameSelect = nameSelectJson[name];
|
|
2504
|
-
|
|
2505
2197
|
if (nameSelect !== undefined) {
|
|
2506
2198
|
// 存在本地选择列里面,选中添加到显示列
|
|
2507
2199
|
if (nameSelect) showHeadArr.push(item);
|
|
@@ -2512,8 +2204,6 @@ var Table = function Table(propsInit) {
|
|
|
2512
2204
|
}
|
|
2513
2205
|
};
|
|
2514
2206
|
/** 处理序号 */
|
|
2515
|
-
|
|
2516
|
-
|
|
2517
2207
|
var handSerial = function handSerial(arr) {
|
|
2518
2208
|
var defaultVal = {
|
|
2519
2209
|
label: intl({
|
|
@@ -2528,7 +2218,6 @@ var Table = function Table(propsInit) {
|
|
|
2528
2218
|
return Number(rowIndex) + 1;
|
|
2529
2219
|
}
|
|
2530
2220
|
};
|
|
2531
|
-
|
|
2532
2221
|
if (props.serialNumber) {
|
|
2533
2222
|
if (typeof props.serialNumber === 'boolean') {
|
|
2534
2223
|
arr.unshift(defaultVal);
|
|
@@ -2542,17 +2231,12 @@ var Table = function Table(propsInit) {
|
|
|
2542
2231
|
* @param arr {(HeadDataProps | HeadDataReqProps)[]} 表头数据
|
|
2543
2232
|
* @param bol {boolean} true请求表头
|
|
2544
2233
|
* */
|
|
2545
|
-
|
|
2546
|
-
|
|
2547
2234
|
var handInitHead = function handInitHead(arr, bol) {
|
|
2548
2235
|
var headShowArr = []; // 表格显示列
|
|
2549
|
-
|
|
2550
2236
|
var headArr = []; // 显示列列表
|
|
2551
|
-
|
|
2552
2237
|
var json = {};
|
|
2553
2238
|
var localHead = getLocalStorageHeadCom();
|
|
2554
2239
|
constData.current.headDataConfig = localHead.headDataConfig || {};
|
|
2555
|
-
|
|
2556
2240
|
for (var i = 0, l = arr.length; i < l; i++) {
|
|
2557
2241
|
var item = arr[i];
|
|
2558
2242
|
var name = item.name || '';
|
|
@@ -2562,7 +2246,6 @@ var Table = function Table(propsInit) {
|
|
|
2562
2246
|
headArr.push(item);
|
|
2563
2247
|
json[name] = item;
|
|
2564
2248
|
}
|
|
2565
|
-
|
|
2566
2249
|
if (bol) {
|
|
2567
2250
|
headShowArr.sort(function (a, b) {
|
|
2568
2251
|
return Number(a.orderNum) - Number(b.orderNum);
|
|
@@ -2571,37 +2254,29 @@ var Table = function Table(propsInit) {
|
|
|
2571
2254
|
return Number(a.orderNum) - Number(b.orderNum);
|
|
2572
2255
|
});
|
|
2573
2256
|
}
|
|
2574
|
-
|
|
2575
2257
|
handSerial(headShowArr); // 处理序号
|
|
2576
|
-
|
|
2577
2258
|
handHeadDataCom(headShowArr); // 处理显示列宽度
|
|
2578
|
-
|
|
2579
2259
|
setHeadDataCom(headShowArr); // 表格当前显示列 集合本地数据
|
|
2580
|
-
|
|
2581
2260
|
setShowHeadList(headArr); // 显示列下拉值 所有头部的配置
|
|
2582
|
-
|
|
2583
2261
|
setHeadDataConfig(Object.assign({}, constData.current.headDataConfig));
|
|
2584
2262
|
constData.current.headDataJson = json;
|
|
2585
|
-
};
|
|
2586
|
-
|
|
2587
|
-
|
|
2263
|
+
};
|
|
2264
|
+
// 计算左边的差量
|
|
2588
2265
|
var handLeftWidth = function handLeftWidth() {
|
|
2589
|
-
var leftNum = 0;
|
|
2590
|
-
|
|
2266
|
+
var leftNum = 0;
|
|
2267
|
+
// 复选
|
|
2591
2268
|
if (props.check) {
|
|
2592
2269
|
leftNum += 48;
|
|
2593
|
-
}
|
|
2594
|
-
|
|
2595
|
-
|
|
2270
|
+
}
|
|
2271
|
+
// 单选
|
|
2596
2272
|
if (props.radio) {
|
|
2597
2273
|
if (props.check) {
|
|
2598
2274
|
leftNum += 32;
|
|
2599
2275
|
} else {
|
|
2600
2276
|
leftNum += 48;
|
|
2601
2277
|
}
|
|
2602
|
-
}
|
|
2603
|
-
|
|
2604
|
-
|
|
2278
|
+
}
|
|
2279
|
+
// 嵌套
|
|
2605
2280
|
if (props.expandable) {
|
|
2606
2281
|
if (props.check || props.radio) {
|
|
2607
2282
|
leftNum += 32;
|
|
@@ -2609,19 +2284,16 @@ var Table = function Table(propsInit) {
|
|
|
2609
2284
|
leftNum += 48;
|
|
2610
2285
|
}
|
|
2611
2286
|
}
|
|
2612
|
-
|
|
2613
2287
|
return leftNum;
|
|
2614
|
-
};
|
|
2615
|
-
|
|
2616
|
-
|
|
2288
|
+
};
|
|
2289
|
+
// 计算右边的差量
|
|
2617
2290
|
var handRightWidth = function handRightWidth() {
|
|
2618
|
-
var rightNum = 0;
|
|
2619
|
-
|
|
2291
|
+
var rightNum = 0;
|
|
2292
|
+
// 显示列宽度
|
|
2620
2293
|
if (props.showColumns === 'inside' || props.showColumns === undefined) {
|
|
2621
2294
|
rightNum += 56;
|
|
2622
|
-
}
|
|
2623
|
-
|
|
2624
|
-
|
|
2295
|
+
}
|
|
2296
|
+
// 操作列
|
|
2625
2297
|
if (props.operate) {
|
|
2626
2298
|
if (props.operate.width) {
|
|
2627
2299
|
rightNum += getStringInNumber(props.operate.width);
|
|
@@ -2636,9 +2308,8 @@ var Table = function Table(propsInit) {
|
|
|
2636
2308
|
}
|
|
2637
2309
|
|
|
2638
2310
|
return rightNum;
|
|
2639
|
-
};
|
|
2640
|
-
|
|
2641
|
-
|
|
2311
|
+
};
|
|
2312
|
+
// 获取宽度
|
|
2642
2313
|
var getWidth = function getWidth(item) {
|
|
2643
2314
|
var w = item.width || '';
|
|
2644
2315
|
var name = item.name || '';
|
|
@@ -2649,66 +2320,55 @@ var Table = function Table(propsInit) {
|
|
|
2649
2320
|
/**
|
|
2650
2321
|
* 处理显示列宽度
|
|
2651
2322
|
* */
|
|
2652
|
-
|
|
2653
|
-
|
|
2654
2323
|
var handHeadDataCom = function handHeadDataCom(arr) {
|
|
2655
2324
|
// 左侧定位数组
|
|
2656
|
-
var leftArr = [];
|
|
2657
|
-
|
|
2658
|
-
var rightArr = [];
|
|
2659
|
-
|
|
2660
|
-
var tableMinWidth = 0;
|
|
2661
|
-
|
|
2325
|
+
var leftArr = [];
|
|
2326
|
+
// 右侧定位数组
|
|
2327
|
+
var rightArr = [];
|
|
2328
|
+
// 表格最小宽度
|
|
2329
|
+
var tableMinWidth = 0;
|
|
2330
|
+
// 左边差量
|
|
2662
2331
|
var leftWidth = handLeftWidth();
|
|
2663
|
-
tableMinWidth += leftWidth;
|
|
2664
|
-
|
|
2332
|
+
tableMinWidth += leftWidth;
|
|
2333
|
+
// 右边差量
|
|
2665
2334
|
var rightWidth = handRightWidth();
|
|
2666
2335
|
tableMinWidth += rightWidth;
|
|
2667
2336
|
var posJson = {
|
|
2668
2337
|
leftBol: false,
|
|
2669
2338
|
rightBol: false
|
|
2670
|
-
};
|
|
2671
|
-
|
|
2339
|
+
};
|
|
2340
|
+
// 显示列
|
|
2672
2341
|
for (var i = 0, l = arr.length; i < l; i++) {
|
|
2673
2342
|
var item = arr[i];
|
|
2674
2343
|
var itemWidth = 0;
|
|
2675
2344
|
var handW = getWidth(item); // 获取宽度,有拖动过后宽度,就用拖动的
|
|
2676
|
-
|
|
2677
2345
|
if (handW) {
|
|
2678
2346
|
itemWidth = getStringInNumber(handW);
|
|
2679
2347
|
tableMinWidth += itemWidth;
|
|
2680
2348
|
} else {
|
|
2681
2349
|
tableMinWidth += lineWidth;
|
|
2682
2350
|
}
|
|
2683
|
-
|
|
2684
2351
|
if (item.fixed === 'left' && item.width) {
|
|
2685
2352
|
// 固定列必须具有宽度
|
|
2686
2353
|
leftArr.push(item);
|
|
2687
2354
|
}
|
|
2688
|
-
|
|
2689
2355
|
if (item.fixed === 'right' && item.width) {
|
|
2690
2356
|
// 固定列必须具有宽度
|
|
2691
2357
|
rightArr.push(item);
|
|
2692
2358
|
}
|
|
2693
2359
|
}
|
|
2694
|
-
|
|
2695
2360
|
if (leftArr.length > 0) {
|
|
2696
|
-
posJson.leftBol = true;
|
|
2697
|
-
|
|
2361
|
+
posJson.leftBol = true;
|
|
2362
|
+
// 左边定位位置
|
|
2698
2363
|
var leftOps = leftWidth;
|
|
2699
|
-
|
|
2700
2364
|
for (var _i = 0, _l = leftArr.length; _i < _l; _i++) {
|
|
2701
2365
|
var _item = leftArr[_i];
|
|
2702
|
-
|
|
2703
2366
|
if (_item.width) {
|
|
2704
2367
|
var _handW = getWidth(_item); // 获取宽度,有拖动过后宽度,就用拖动的
|
|
2705
|
-
|
|
2706
|
-
|
|
2707
2368
|
var _itemWidth = getStringInNumber(_handW);
|
|
2708
|
-
|
|
2709
2369
|
_item.paraui_left_width = leftOps;
|
|
2710
|
-
leftOps += _itemWidth;
|
|
2711
|
-
|
|
2370
|
+
leftOps += _itemWidth;
|
|
2371
|
+
// 最后一个
|
|
2712
2372
|
if (_i === leftArr.length - 1) {
|
|
2713
2373
|
_item.paraui_fixed_left_last = true;
|
|
2714
2374
|
} else {
|
|
@@ -2717,24 +2377,18 @@ var Table = function Table(propsInit) {
|
|
|
2717
2377
|
}
|
|
2718
2378
|
}
|
|
2719
2379
|
}
|
|
2720
|
-
|
|
2721
2380
|
if (rightArr.length > 0) {
|
|
2722
|
-
posJson.rightBol = true;
|
|
2723
|
-
|
|
2381
|
+
posJson.rightBol = true;
|
|
2382
|
+
// 右边定位位置
|
|
2724
2383
|
var rightOps = rightWidth;
|
|
2725
|
-
|
|
2726
2384
|
for (var _i2 = rightArr.length - 1; _i2 >= 0; _i2--) {
|
|
2727
2385
|
var _item2 = rightArr[_i2];
|
|
2728
|
-
|
|
2729
2386
|
if (_item2.width) {
|
|
2730
2387
|
var _handW2 = getWidth(_item2); // 获取宽度,有拖动过后宽度,就用拖动的
|
|
2731
|
-
|
|
2732
|
-
|
|
2733
2388
|
var _itemWidth2 = getStringInNumber(_handW2);
|
|
2734
|
-
|
|
2735
2389
|
_item2.paraui_right_width = rightOps;
|
|
2736
|
-
rightOps += _itemWidth2;
|
|
2737
|
-
|
|
2390
|
+
rightOps += _itemWidth2;
|
|
2391
|
+
// 最后一个
|
|
2738
2392
|
if (_i2 === rightArr.length - 1) {
|
|
2739
2393
|
_item2.paraui_fixed_right_first = true;
|
|
2740
2394
|
} else {
|
|
@@ -2743,45 +2397,35 @@ var Table = function Table(propsInit) {
|
|
|
2743
2397
|
}
|
|
2744
2398
|
}
|
|
2745
2399
|
}
|
|
2746
|
-
|
|
2747
2400
|
setTableMinWidth(tableMinWidth); // 表格最小宽度
|
|
2748
|
-
|
|
2749
2401
|
setPosFixed(posJson); // 定位信息
|
|
2750
2402
|
};
|
|
2751
2403
|
/**
|
|
2752
2404
|
* 处理过滤请求数据
|
|
2753
2405
|
* */
|
|
2754
|
-
|
|
2755
|
-
|
|
2756
2406
|
var handFilterReq = function handFilterReq() {
|
|
2757
2407
|
var json = {};
|
|
2758
2408
|
var arr = Object.keys(selectFilterCom);
|
|
2759
2409
|
var headDataJson = constData.current.headDataJson || {};
|
|
2760
|
-
|
|
2761
2410
|
for (var i = 0, l = arr.length; i < l; i++) {
|
|
2762
2411
|
var name = arr[i];
|
|
2763
2412
|
var itemValue = selectFilterCom[name];
|
|
2764
2413
|
var item = headDataJson[name];
|
|
2765
|
-
|
|
2766
2414
|
if (item && item.filterRadio) {
|
|
2767
2415
|
json[name] = itemValue[0];
|
|
2768
2416
|
} else {
|
|
2769
2417
|
json[name] = itemValue;
|
|
2770
2418
|
}
|
|
2771
2419
|
}
|
|
2772
|
-
|
|
2773
2420
|
return json;
|
|
2774
2421
|
};
|
|
2775
2422
|
/**
|
|
2776
2423
|
* 发送请求
|
|
2777
2424
|
* @param obj {ReqProps} 请求信息
|
|
2778
2425
|
*/
|
|
2779
|
-
|
|
2780
|
-
|
|
2781
2426
|
var requestData = function requestData(obj) {
|
|
2782
2427
|
return __awaiter(void 0, void 0, void 0, /*#__PURE__*/regenerator.mark(function _callee() {
|
|
2783
2428
|
var _yield$requestFunc, data, err;
|
|
2784
|
-
|
|
2785
2429
|
return regenerator.wrap(function _callee$(_context) {
|
|
2786
2430
|
while (1) {
|
|
2787
2431
|
switch (_context.prev = _context.next) {
|
|
@@ -2790,27 +2434,22 @@ var Table = function Table(propsInit) {
|
|
|
2790
2434
|
if (props.loading === undefined) setLoadState(true);
|
|
2791
2435
|
_context.next = 4;
|
|
2792
2436
|
return requestFunc(obj);
|
|
2793
|
-
|
|
2794
2437
|
case 4:
|
|
2795
2438
|
_yield$requestFunc = _context.sent;
|
|
2796
2439
|
data = _yield$requestFunc.data;
|
|
2797
2440
|
err = _yield$requestFunc.err;
|
|
2798
|
-
|
|
2799
2441
|
if (!err) {
|
|
2800
2442
|
_context.next = 11;
|
|
2801
2443
|
break;
|
|
2802
2444
|
}
|
|
2803
|
-
|
|
2804
|
-
|
|
2805
|
-
|
|
2445
|
+
if (props.loading === undefined) setLoadState(false);
|
|
2446
|
+
// cancel的接口不清除上次展示的数据
|
|
2806
2447
|
if (!err.__CANCEL__) {
|
|
2807
2448
|
setRowData([]);
|
|
2808
2449
|
setTotal(0);
|
|
2809
2450
|
setRowDataJson({});
|
|
2810
2451
|
}
|
|
2811
|
-
|
|
2812
2452
|
return _context.abrupt("return", false);
|
|
2813
|
-
|
|
2814
2453
|
case 11:
|
|
2815
2454
|
if (requestCallback) {
|
|
2816
2455
|
requestCallback(data, function (handData) {
|
|
@@ -2825,7 +2464,6 @@ var Table = function Table(propsInit) {
|
|
|
2825
2464
|
handReqData(data);
|
|
2826
2465
|
if (props.loading === undefined) setLoadState(false);
|
|
2827
2466
|
}
|
|
2828
|
-
|
|
2829
2467
|
case 12:
|
|
2830
2468
|
case "end":
|
|
2831
2469
|
return _context.stop();
|
|
@@ -2838,17 +2476,13 @@ var Table = function Table(propsInit) {
|
|
|
2838
2476
|
* 设置请求数据
|
|
2839
2477
|
* @param data {any} 请求信息
|
|
2840
2478
|
*/
|
|
2841
|
-
|
|
2842
|
-
|
|
2843
2479
|
var handReqData = function handReqData(data) {
|
|
2844
2480
|
if (data.columns && props.headData === undefined) {
|
|
2845
2481
|
var str = JSON.stringify(data.columns);
|
|
2846
|
-
|
|
2847
2482
|
if (str !== JSON.stringify(originalHead)) {
|
|
2848
2483
|
setOriginalHead(data.columns);
|
|
2849
2484
|
var arr = Object.keys(data.columns);
|
|
2850
2485
|
var headDataArr = []; // 表头数据
|
|
2851
|
-
|
|
2852
2486
|
for (var i = 0, l = arr.length; i < l; i++) {
|
|
2853
2487
|
var key = arr[i];
|
|
2854
2488
|
var item = data.columns[key];
|
|
@@ -2861,29 +2495,24 @@ var Table = function Table(propsInit) {
|
|
|
2861
2495
|
item.width = item.width;
|
|
2862
2496
|
headDataArr.push(item);
|
|
2863
2497
|
}
|
|
2864
|
-
|
|
2865
2498
|
handInitHead(headDataArr, true);
|
|
2866
2499
|
}
|
|
2867
2500
|
}
|
|
2868
|
-
|
|
2869
2501
|
if (pagination) {
|
|
2870
2502
|
// 分页 data是对象
|
|
2871
2503
|
setNowPageData(data.list || []);
|
|
2872
2504
|
setTotal(data.total);
|
|
2873
|
-
|
|
2874
2505
|
if (data.page !== undefined && data.page !== null) {
|
|
2875
2506
|
constData.current.page = Number(data.page);
|
|
2876
2507
|
setPageCom(Number(data.page));
|
|
2877
2508
|
}
|
|
2878
2509
|
} else {
|
|
2879
2510
|
var handData1 = [];
|
|
2880
|
-
|
|
2881
2511
|
if (data instanceof Array) {
|
|
2882
2512
|
handData1 = data;
|
|
2883
2513
|
} else {
|
|
2884
2514
|
handData1 = data.list || [];
|
|
2885
2515
|
}
|
|
2886
|
-
|
|
2887
2516
|
setNowPageData(handData1);
|
|
2888
2517
|
}
|
|
2889
2518
|
};
|
|
@@ -2891,23 +2520,19 @@ var Table = function Table(propsInit) {
|
|
|
2891
2520
|
* 设置当前页数据
|
|
2892
2521
|
* @param nowPageData {any} 当前页数据
|
|
2893
2522
|
*/
|
|
2894
|
-
|
|
2895
|
-
|
|
2896
2523
|
var setNowPageData = function setNowPageData(nowPageData) {
|
|
2897
2524
|
// 加载更多请求放在里面
|
|
2898
2525
|
if (constData.current.loadMoreUrl) {
|
|
2899
2526
|
var historyData = constData.current.historyData || [];
|
|
2900
|
-
|
|
2901
2527
|
if (historyData.length > 0) {
|
|
2902
2528
|
nowPageData = [].concat(_toConsumableArray(historyData), _toConsumableArray(nowPageData));
|
|
2903
2529
|
}
|
|
2904
2530
|
}
|
|
2905
|
-
|
|
2906
2531
|
var handDataJson = ArrayToObject(rowKey, nowPageData);
|
|
2907
2532
|
constData.current.historyData = nowPageData;
|
|
2908
2533
|
setRowDataJson(handDataJson);
|
|
2909
|
-
setRowData(nowPageData);
|
|
2910
|
-
|
|
2534
|
+
setRowData(nowPageData);
|
|
2535
|
+
// 设置总数对象
|
|
2911
2536
|
if (url) {
|
|
2912
2537
|
setTotalDataJson(Object.assign(Object.assign({}, totalDataJson), handDataJson));
|
|
2913
2538
|
}
|
|
@@ -2915,8 +2540,6 @@ var Table = function Table(propsInit) {
|
|
|
2915
2540
|
/**
|
|
2916
2541
|
* 处理page
|
|
2917
2542
|
* */
|
|
2918
|
-
|
|
2919
|
-
|
|
2920
2543
|
var handPage = function handPage(num) {
|
|
2921
2544
|
constData.current.page = num;
|
|
2922
2545
|
setPageCom(num);
|
|
@@ -2926,8 +2549,6 @@ var Table = function Table(propsInit) {
|
|
|
2926
2549
|
* 改变页数
|
|
2927
2550
|
* @param num {number | undefined} 页数
|
|
2928
2551
|
*/
|
|
2929
|
-
|
|
2930
|
-
|
|
2931
2552
|
var changePage = function changePage(num) {
|
|
2932
2553
|
if (num !== undefined) handPage(num);
|
|
2933
2554
|
clearCheckValue();
|
|
@@ -2936,8 +2557,6 @@ var Table = function Table(propsInit) {
|
|
|
2936
2557
|
* 改变每页条数
|
|
2937
2558
|
* @param num {number | undefined} 条数
|
|
2938
2559
|
*/
|
|
2939
|
-
|
|
2940
|
-
|
|
2941
2560
|
var changeRowsPerPage = function changeRowsPerPage(num) {
|
|
2942
2561
|
if (num !== undefined) handSize(num);
|
|
2943
2562
|
handPage(1);
|
|
@@ -2945,8 +2564,6 @@ var Table = function Table(propsInit) {
|
|
|
2945
2564
|
/**
|
|
2946
2565
|
* 加载更多,点击改变分页
|
|
2947
2566
|
*/
|
|
2948
|
-
|
|
2949
|
-
|
|
2950
2567
|
var changePageMore = function changePageMore() {
|
|
2951
2568
|
var pageHnad = Number(pageCom) + 1;
|
|
2952
2569
|
handPage(pageHnad);
|
|
@@ -2956,25 +2573,19 @@ var Table = function Table(propsInit) {
|
|
|
2956
2573
|
* @param event 元素
|
|
2957
2574
|
* @param name 当前列name
|
|
2958
2575
|
*/
|
|
2959
|
-
|
|
2960
|
-
|
|
2961
2576
|
var handleRequestSort = function handleRequestSort(event, name) {
|
|
2962
2577
|
// asc 升序 -> desc降序 -> undefined 无序
|
|
2963
2578
|
var index = orderFieldArr.indexOf(name);
|
|
2964
|
-
|
|
2965
2579
|
if (index !== -1) {
|
|
2966
2580
|
// 排序过
|
|
2967
2581
|
var orderType = orderTypeArr[index];
|
|
2968
|
-
|
|
2969
2582
|
if (orderType === 'asc') {
|
|
2970
2583
|
orderTypeArr[index] = 'desc';
|
|
2971
2584
|
}
|
|
2972
|
-
|
|
2973
2585
|
if (orderType === 'desc') {
|
|
2974
2586
|
orderFieldArr.splice(index, 1);
|
|
2975
2587
|
orderTypeArr.splice(index, 1);
|
|
2976
2588
|
}
|
|
2977
|
-
|
|
2978
2589
|
if (orderType === undefined) {
|
|
2979
2590
|
orderTypeArr[index] = 'asc';
|
|
2980
2591
|
}
|
|
@@ -2983,50 +2594,38 @@ var Table = function Table(propsInit) {
|
|
|
2983
2594
|
orderFieldArr.push(name);
|
|
2984
2595
|
orderTypeArr.push('asc');
|
|
2985
2596
|
}
|
|
2986
|
-
|
|
2987
2597
|
var orderFieldArrHand = _toConsumableArray(orderFieldArr);
|
|
2988
|
-
|
|
2989
|
-
|
|
2990
|
-
|
|
2991
|
-
|
|
2598
|
+
var orderTypeArrHand = _toConsumableArray(orderTypeArr);
|
|
2599
|
+
// 单个排序
|
|
2992
2600
|
if (sortTableRadio) {
|
|
2993
2601
|
var num = orderFieldArrHand.indexOf(name);
|
|
2994
|
-
|
|
2995
2602
|
if (num !== -1) {
|
|
2996
2603
|
orderFieldArrHand = [orderFieldArrHand[num]];
|
|
2997
2604
|
orderTypeArrHand = [orderTypeArrHand[num]];
|
|
2998
2605
|
}
|
|
2999
2606
|
}
|
|
3000
|
-
|
|
3001
2607
|
setOrderFieldArr(orderFieldArrHand);
|
|
3002
2608
|
setOrderTypeArr(orderTypeArrHand);
|
|
3003
2609
|
constData.current.orderFieldArr = orderFieldArrHand;
|
|
3004
2610
|
constData.current.orderTypeArr = orderTypeArrHand;
|
|
3005
|
-
|
|
3006
2611
|
if (constData.current.loadMoreUrl) {
|
|
3007
2612
|
constData.current.historyData = [];
|
|
3008
2613
|
handPage(1);
|
|
3009
2614
|
}
|
|
3010
|
-
|
|
3011
2615
|
setRefreshCom(Math.random());
|
|
3012
2616
|
};
|
|
3013
2617
|
/**
|
|
3014
2618
|
* 处理复选框往外抛值
|
|
3015
2619
|
* @param json 当前选中值
|
|
3016
2620
|
*/
|
|
3017
|
-
|
|
3018
|
-
|
|
3019
2621
|
var handCheckValue = function handCheckValue(json) {
|
|
3020
2622
|
if (props.checkDefaultValue === undefined) setCheckJson(Object.assign({}, json));
|
|
3021
2623
|
var arr = Object.keys(json);
|
|
3022
|
-
|
|
3023
2624
|
if (setCheck) {
|
|
3024
2625
|
var selectData = [];
|
|
3025
|
-
|
|
3026
2626
|
for (var i = 0, l = arr.length; i < l; i++) {
|
|
3027
2627
|
if (totalDataJson[arr[i]]) selectData.push(totalDataJson[arr[i]]);
|
|
3028
2628
|
}
|
|
3029
|
-
|
|
3030
2629
|
setCheck(arr, selectData);
|
|
3031
2630
|
}
|
|
3032
2631
|
};
|
|
@@ -3035,16 +2634,12 @@ var Table = function Table(propsInit) {
|
|
|
3035
2634
|
* @param event 选择的元素
|
|
3036
2635
|
* @param bol 全选 / 全不选
|
|
3037
2636
|
*/
|
|
3038
|
-
|
|
3039
|
-
|
|
3040
2637
|
var setAllCheck = function setAllCheck(event, bol) {
|
|
3041
2638
|
// 存在checkDefaultValue, {...checkJson}解决直接使用checkJson, 复选框会一闪
|
|
3042
2639
|
// 不存在checkDefaultValue,内部直接记录状态
|
|
3043
2640
|
var checkJsonDeep = props.checkDefaultValue !== undefined ? Object.assign({}, checkJson) : checkJson;
|
|
3044
|
-
|
|
3045
2641
|
for (var i = 0, l = rowData.length; i < l; i++) {
|
|
3046
2642
|
var key = rowData[i][rowKey];
|
|
3047
|
-
|
|
3048
2643
|
if (!disabledJson[key]) {
|
|
3049
2644
|
if (bol) {
|
|
3050
2645
|
checkJsonDeep[key] = true;
|
|
@@ -3053,7 +2648,6 @@ var Table = function Table(propsInit) {
|
|
|
3053
2648
|
}
|
|
3054
2649
|
}
|
|
3055
2650
|
}
|
|
3056
|
-
|
|
3057
2651
|
handCheckValue(checkJsonDeep);
|
|
3058
2652
|
};
|
|
3059
2653
|
/**
|
|
@@ -3062,15 +2656,12 @@ var Table = function Table(propsInit) {
|
|
|
3062
2656
|
* @param bol 选 / 不选
|
|
3063
2657
|
* @param key 当前行key
|
|
3064
2658
|
*/
|
|
3065
|
-
|
|
3066
|
-
|
|
3067
2659
|
var selectCheck = function selectCheck(event, bol, key) {
|
|
3068
2660
|
// 存在checkDefaultValue, {...checkJson}解决直接使用checkJson, 复选框会一闪
|
|
3069
2661
|
// 不存在checkDefaultValue,内部直接记录状态
|
|
3070
2662
|
var checkJsonDeep = props.checkDefaultValue !== undefined ? Object.assign({}, checkJson) : checkJson;
|
|
3071
2663
|
checkJsonDeep[key] = bol;
|
|
3072
2664
|
if (checkJsonDeep[key] === false) delete checkJsonDeep[key]; // 确保json里面的数据都是选中的
|
|
3073
|
-
|
|
3074
2665
|
handCheckValue(checkJsonDeep);
|
|
3075
2666
|
};
|
|
3076
2667
|
/**
|
|
@@ -3078,16 +2669,12 @@ var Table = function Table(propsInit) {
|
|
|
3078
2669
|
* @param event 选择的元素
|
|
3079
2670
|
* @param item 当前行数据
|
|
3080
2671
|
*/
|
|
3081
|
-
|
|
3082
|
-
|
|
3083
2672
|
var selectRadio = function selectRadio(event, val) {
|
|
3084
2673
|
if (setRadio) setRadio(val, totalDataJson[val]);
|
|
3085
2674
|
};
|
|
3086
2675
|
/**
|
|
3087
2676
|
* 清空复选框选中值
|
|
3088
2677
|
*/
|
|
3089
|
-
|
|
3090
|
-
|
|
3091
2678
|
var clearCheckValue = function clearCheckValue() {
|
|
3092
2679
|
if (!checkRememberPage) {
|
|
3093
2680
|
setCheckJson({});
|
|
@@ -3100,8 +2687,6 @@ var Table = function Table(propsInit) {
|
|
|
3100
2687
|
* @param item 当前点击项
|
|
3101
2688
|
* @param isRest 是否重置
|
|
3102
2689
|
* */
|
|
3103
|
-
|
|
3104
|
-
|
|
3105
2690
|
var changeSelectHead = function changeSelectHead(arr, item, isRest) {
|
|
3106
2691
|
handHeadDataCom(arr);
|
|
3107
2692
|
setHeadDataCom(arr);
|
|
@@ -3109,13 +2694,11 @@ var Table = function Table(propsInit) {
|
|
|
3109
2694
|
setFixed: true,
|
|
3110
2695
|
headArr: arr
|
|
3111
2696
|
};
|
|
3112
|
-
|
|
3113
2697
|
if (isRest) {
|
|
3114
2698
|
obj.setDrag = true;
|
|
3115
2699
|
obj.headDataConfig = {};
|
|
3116
|
-
}
|
|
3117
|
-
|
|
3118
|
-
|
|
2700
|
+
}
|
|
2701
|
+
// 本地记住选择列
|
|
3119
2702
|
setLocalStorageHeadCom(obj);
|
|
3120
2703
|
onClickColumns && onClickColumns(arr, item);
|
|
3121
2704
|
};
|
|
@@ -3125,70 +2708,52 @@ var Table = function Table(propsInit) {
|
|
|
3125
2708
|
* @param bol 重置
|
|
3126
2709
|
* @param item 当前点击项
|
|
3127
2710
|
*/
|
|
3128
|
-
|
|
3129
|
-
|
|
3130
2711
|
var changeShowList = function changeShowList(headShowArr, bol, item) {
|
|
3131
2712
|
if (bol) {
|
|
3132
2713
|
constData.current.headDataConfig = {};
|
|
3133
2714
|
setHeadDataConfig({}); // 重置拖拽列
|
|
3134
|
-
|
|
3135
2715
|
var arr = [];
|
|
3136
|
-
|
|
3137
2716
|
var arrShow = _toConsumableArray(showHeadList);
|
|
3138
|
-
|
|
3139
2717
|
handSerial(arrShow);
|
|
3140
|
-
|
|
3141
2718
|
for (var i = 0, l = arrShow.length; i < l; i++) {
|
|
3142
2719
|
var _item3 = arrShow[i];
|
|
3143
|
-
|
|
3144
2720
|
if (_item3 && _item3.selected) {
|
|
3145
2721
|
// 当前显示字段
|
|
3146
2722
|
arr.push(_item3);
|
|
3147
2723
|
}
|
|
3148
2724
|
}
|
|
3149
|
-
|
|
3150
2725
|
changeSelectHead(arr, item, true);
|
|
3151
2726
|
return;
|
|
3152
2727
|
}
|
|
3153
|
-
|
|
3154
2728
|
headShowArr.sort(function (a, b) {
|
|
3155
2729
|
return Number(a.orderNum) - Number(b.orderNum);
|
|
3156
2730
|
});
|
|
3157
|
-
|
|
3158
2731
|
var headShowArrHand = _toConsumableArray(headShowArr);
|
|
3159
|
-
|
|
3160
2732
|
changeSelectHead(headShowArrHand, item);
|
|
3161
2733
|
};
|
|
3162
2734
|
/**
|
|
3163
2735
|
* 改变过滤
|
|
3164
2736
|
*/
|
|
3165
|
-
|
|
3166
|
-
|
|
3167
2737
|
var changeFilter = function changeFilter(val) {
|
|
3168
2738
|
constData.current.selectFilterCom = DeepClone(val);
|
|
3169
2739
|
setSelectFilterCom(DeepClone(val));
|
|
3170
2740
|
handPage(1);
|
|
3171
2741
|
};
|
|
3172
2742
|
/** 改变拖拽列width */
|
|
3173
|
-
|
|
3174
|
-
|
|
3175
2743
|
var changeColumnWidth = function changeColumnWidth(headCell, result) {
|
|
3176
2744
|
var name = headCell.name || '';
|
|
3177
2745
|
constData.current.headDataConfig[name] = {
|
|
3178
2746
|
width: result.width
|
|
3179
2747
|
};
|
|
3180
2748
|
setHeadDataConfig(Object.assign({}, constData.current.headDataConfig)); // 设置表格列配置,被拖动的width
|
|
3181
|
-
|
|
3182
2749
|
handHeadDataCom(_toConsumableArray(headData)); // 重新计算表格的最小宽度
|
|
3183
2750
|
// 本地记住拖动列宽度
|
|
3184
|
-
|
|
3185
2751
|
setLocalStorageHeadCom({
|
|
3186
2752
|
headDataConfig: constData.current.headDataConfig,
|
|
3187
2753
|
setDrag: true
|
|
3188
2754
|
});
|
|
3189
|
-
};
|
|
3190
|
-
|
|
3191
|
-
|
|
2755
|
+
};
|
|
2756
|
+
// 表格头部memo
|
|
3192
2757
|
var TableHeadMemo = useMemo(function () {
|
|
3193
2758
|
return jsx(TableHead$1, {
|
|
3194
2759
|
orderTypeArr: orderTypeArr,
|
|
@@ -3219,8 +2784,8 @@ var Table = function Table(propsInit) {
|
|
|
3219
2784
|
headDataConfig: headDataConfig,
|
|
3220
2785
|
changeColumnWidth: changeColumnWidth
|
|
3221
2786
|
});
|
|
3222
|
-
}, [totalDataJson, showColumns, rowKey, rowData, checkJson, disabledJson, orderTypeArr, orderFieldArr, sortTable, filter, expandable, check, headSelectStatus, radio, align, showHeadList, headDataCom, selectFilterCom, operate, onClickColumns, sortTableRadio, fixedTable, posFixed, beyondText, fixedColumn, lineWidth, dragColumn, headDataConfig]);
|
|
3223
|
-
|
|
2787
|
+
}, [totalDataJson, showColumns, rowKey, rowData, checkJson, disabledJson, orderTypeArr, orderFieldArr, sortTable, filter, expandable, check, headSelectStatus, radio, align, showHeadList, headDataCom, selectFilterCom, operate, onClickColumns, sortTableRadio, fixedTable, posFixed, beyondText, fixedColumn, lineWidth, dragColumn, headDataConfig]);
|
|
2788
|
+
// 表格内容memo
|
|
3224
2789
|
var TableBodyMemo = useMemo(function () {
|
|
3225
2790
|
return jsx(TableBody, {
|
|
3226
2791
|
url: url,
|
|
@@ -3266,14 +2831,16 @@ var Table = function Table(propsInit) {
|
|
|
3266
2831
|
beyondText: beyondText,
|
|
3267
2832
|
fixedColumn: fixedColumn,
|
|
3268
2833
|
fixedTable: fixedTable,
|
|
3269
|
-
onClickRow: onClickRow
|
|
2834
|
+
onClickRow: onClickRow,
|
|
2835
|
+
rowClassMapping: rowClassMapping
|
|
3270
2836
|
});
|
|
3271
|
-
}, [showColumns, formatter, rowKey, rowData, headDataCom, expandable, check, radio, checkJson, sortTable, orderTypeArr, orderFieldArr, radioValue, disabledJson, align, tableCell, operate, setRadio, setCheck, totalDataJson, loadMore, loadMoreRender, onClickMore, total, pageCom, sizeCom, loadMoreUrl, expandValue, expandMultiple, disabledExpand, onExpand, defaultExpandAllRows, loadState, emptyProps, url, disabledArrStatus, posFixed, beyondText, fixedTable, fixedColumn, onClickRow]);
|
|
3272
|
-
|
|
2837
|
+
}, [showColumns, formatter, rowKey, rowData, headDataCom, expandable, check, radio, checkJson, sortTable, orderTypeArr, orderFieldArr, radioValue, disabledJson, align, tableCell, operate, setRadio, setCheck, totalDataJson, loadMore, loadMoreRender, onClickMore, total, pageCom, sizeCom, loadMoreUrl, expandValue, expandMultiple, disabledExpand, onExpand, defaultExpandAllRows, loadState, emptyProps, url, disabledArrStatus, posFixed, beyondText, fixedTable, fixedColumn, onClickRow, rowClassMapping]);
|
|
2838
|
+
// 表格分页memo
|
|
3273
2839
|
var TablePaginationMemo = useMemo(function () {
|
|
3274
2840
|
if (constData.current.page === null || constData.current.size === null || loadMore) return;
|
|
3275
2841
|
return pagination && jsx(TableHead, {
|
|
3276
2842
|
paginationType: paginationType,
|
|
2843
|
+
flippingArrow: flippingArrow,
|
|
3277
2844
|
autoPagination: autoPagination,
|
|
3278
2845
|
total: total,
|
|
3279
2846
|
page: pageCom,
|
|
@@ -3282,30 +2849,27 @@ var Table = function Table(propsInit) {
|
|
|
3282
2849
|
changePage: changePage,
|
|
3283
2850
|
changeRowsPerPage: changeRowsPerPage
|
|
3284
2851
|
});
|
|
3285
|
-
}, [total, pageCom, sizeCom, sizeArrCom, pagination, loadMore, autoPagination, paginationType]);
|
|
3286
|
-
|
|
2852
|
+
}, [total, pageCom, sizeCom, sizeArrCom, pagination, loadMore, autoPagination, paginationType, flippingArrow]);
|
|
2853
|
+
// 表格内容滚动
|
|
3287
2854
|
var tableBoxScroll = function tableBoxScroll(e) {
|
|
3288
2855
|
var dom = tableRef.current;
|
|
3289
2856
|
var scrollDom = e.target;
|
|
3290
2857
|
if (!dom || !scrollDom) return;
|
|
3291
2858
|
dom.classList.remove('table-scroll-left', 'table-scroll-right', 'table-scroll-middle');
|
|
3292
|
-
if (scrollDom.scrollWidth <= scrollDom.clientWidth) return;
|
|
3293
|
-
|
|
2859
|
+
if (scrollDom.scrollWidth <= scrollDom.clientWidth) return;
|
|
2860
|
+
// 最左边
|
|
3294
2861
|
if (scrollDom.scrollLeft === 0) {
|
|
3295
2862
|
dom.classList.add('table-scroll-left');
|
|
3296
2863
|
return;
|
|
3297
|
-
}
|
|
3298
|
-
|
|
3299
|
-
|
|
2864
|
+
}
|
|
2865
|
+
// 最右边
|
|
3300
2866
|
if (scrollDom.scrollLeft + scrollDom.clientWidth === scrollDom.scrollWidth) {
|
|
3301
2867
|
dom.classList.add('table-scroll-right');
|
|
3302
2868
|
return;
|
|
3303
2869
|
}
|
|
3304
|
-
|
|
3305
2870
|
dom.classList.add('table-scroll-middle');
|
|
3306
|
-
};
|
|
3307
|
-
|
|
3308
|
-
|
|
2871
|
+
};
|
|
2872
|
+
// 处理class
|
|
3309
2873
|
var handClass = function handClass() {
|
|
3310
2874
|
var str = $prefixCls + '-table';
|
|
3311
2875
|
if (showColumns === 'inside') str += " ".concat($prefixCls, "-table-columns-inside");
|
|
@@ -3321,15 +2885,13 @@ var Table = function Table(propsInit) {
|
|
|
3321
2885
|
if (loadState) str += " ".concat($prefixCls, "-table-load");
|
|
3322
2886
|
if (className) str += ' ' + className;
|
|
3323
2887
|
return str;
|
|
3324
|
-
};
|
|
3325
|
-
|
|
3326
|
-
|
|
2888
|
+
};
|
|
2889
|
+
// 改变屏幕大小
|
|
3327
2890
|
var changeResize = function changeResize() {
|
|
3328
2891
|
tableBoxScroll({
|
|
3329
2892
|
target: containerRef.current
|
|
3330
2893
|
});
|
|
3331
2894
|
};
|
|
3332
|
-
|
|
3333
2895
|
return jsxs("div", Object.assign({
|
|
3334
2896
|
className: handClass(),
|
|
3335
2897
|
style: style,
|