vxe-table 4.2.6-beta.1 → 4.2.6-beta.4
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/README.md +1 -1
- package/README.zh-TW.md +0 -4
- package/es/edit/src/hook.js +5 -4
- package/es/export/src/export-panel.js +19 -19
- package/es/export/src/import-panel.js +9 -9
- package/es/filter/src/hook.js +5 -5
- package/es/form/src/form-item.js +1 -1
- package/es/form/src/form.js +8 -9
- package/es/form/src/render.js +1 -1
- package/es/grid/src/grid.js +7 -4
- package/es/list/src/list.js +8 -9
- package/es/loading/index.js +7 -0
- package/es/loading/src/loading.js +31 -0
- package/es/locale/lang/en-US.js +5 -0
- package/es/locale/lang/ja-JP.js +5 -0
- package/es/locale/lang/zh-CN.js +5 -0
- package/es/locale/lang/zh-TC.js +5 -0
- package/es/menu/src/hooks.js +0 -6
- package/es/modal/src/modal.js +8 -9
- package/es/select/src/select.js +145 -15
- package/es/select/style.css +17 -67
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/src/body.js +1 -1
- package/es/table/src/cell.js +3 -3
- package/es/table/src/columnInfo.js +1 -1
- package/es/table/src/table.js +69 -57
- package/es/table/src/util.js +2 -2
- package/es/table/style.css +0 -63
- package/es/toolbar/style.css +11 -9
- package/es/tools/log.js +1 -1
- package/es/v-x-e-table/index.js +1 -1
- package/es/v-x-e-table/src/conf.js +3 -0
- package/es/v-x-e-table/style.css +558 -0
- package/lib/edit/src/hook.js +5 -5
- package/lib/edit/src/hook.min.js +1 -1
- package/lib/filter/src/hook.js +8 -5
- package/lib/filter/src/hook.min.js +1 -1
- package/lib/form/src/form-item.js +1 -0
- package/lib/form/src/form-item.min.js +1 -1
- package/lib/form/src/form.js +10 -7
- package/lib/form/src/form.min.js +1 -1
- package/lib/form/src/render.js +1 -0
- package/lib/form/src/render.min.js +1 -1
- package/lib/grid/src/grid.js +11 -6
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +383 -131
- package/lib/index.umd.min.js +1 -1
- package/lib/list/src/list.js +10 -7
- package/lib/list/src/list.min.js +1 -1
- package/lib/loading/index.js +19 -0
- package/lib/loading/index.min.js +1 -0
- package/lib/loading/src/loading.js +39 -0
- package/lib/loading/src/loading.min.js +1 -0
- package/lib/locale/lang/en-US.js +5 -0
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +5 -0
- package/lib/locale/lang/ja-JP.js +5 -0
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +5 -0
- package/lib/locale/lang/zh-CN.js +5 -0
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +5 -0
- package/lib/locale/lang/zh-HK.min.js +1 -1
- package/lib/locale/lang/zh-HK.umd.js +5 -0
- package/lib/locale/lang/zh-MO.min.js +1 -1
- package/lib/locale/lang/zh-MO.umd.js +5 -0
- package/lib/locale/lang/zh-TC.js +5 -0
- package/lib/locale/lang/zh-TC.min.js +1 -1
- package/lib/locale/lang/zh-TC.umd.js +5 -0
- package/lib/locale/lang/zh-TW.min.js +1 -1
- package/lib/locale/lang/zh-TW.umd.js +5 -0
- package/lib/menu/src/hooks.js +0 -6
- package/lib/modal/src/modal.js +9 -7
- package/lib/modal/src/modal.min.js +1 -1
- package/lib/select/src/select.js +194 -16
- package/lib/select/src/select.min.js +1 -1
- package/lib/select/style/style.css +17 -67
- package/lib/select/style/style.min.css +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/src/body.js +1 -1
- package/lib/table/src/body.min.js +1 -1
- package/lib/table/src/cell.js +3 -3
- package/lib/table/src/cell.min.js +1 -1
- package/lib/table/src/columnInfo.js +1 -1
- package/lib/table/src/columnInfo.min.js +1 -1
- package/lib/table/src/table.js +79 -60
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/src/util.js +2 -2
- package/lib/table/src/util.min.js +1 -1
- package/lib/table/style/style.css +0 -63
- package/lib/table/style/style.min.css +1 -1
- package/lib/toolbar/style/style.css +11 -9
- package/lib/toolbar/style/style.min.css +1 -1
- package/lib/tools/log.js +1 -1
- package/lib/tools/log.min.js +1 -1
- package/lib/v-x-e-table/index.js +1 -1
- package/lib/v-x-e-table/index.min.js +1 -1
- package/lib/v-x-e-table/src/conf.js +3 -0
- package/lib/v-x-e-table/src/conf.min.js +1 -1
- package/lib/v-x-e-table/style/style.css +558 -0
- package/lib/v-x-e-table/style/style.min.css +1 -0
- package/package.json +1 -1
- package/packages/edit/src/hook.ts +5 -4
- package/packages/export/src/export-panel.ts +19 -19
- package/packages/export/src/import-panel.ts +9 -9
- package/packages/filter/src/hook.ts +7 -7
- package/packages/form/src/form-item.ts +1 -1
- package/packages/form/src/form.ts +8 -9
- package/packages/form/src/render.ts +1 -1
- package/packages/grid/src/grid.ts +7 -4
- package/packages/list/src/list.ts +8 -9
- package/packages/loading/index.ts +10 -0
- package/packages/loading/src/loading.ts +32 -0
- package/packages/locale/lang/en-US.ts +5 -0
- package/packages/locale/lang/ja-JP.ts +5 -0
- package/packages/locale/lang/zh-CN.ts +5 -0
- package/packages/locale/lang/zh-TC.ts +5 -0
- package/packages/menu/src/hooks.ts +0 -6
- package/packages/modal/src/modal.ts +8 -9
- package/packages/select/src/select.ts +146 -16
- package/packages/table/src/body.ts +1 -1
- package/packages/table/src/cell.ts +3 -3
- package/packages/table/src/columnInfo.ts +1 -1
- package/packages/table/src/table.ts +71 -59
- package/packages/table/src/util.ts +4 -4
- package/packages/v-x-e-table/src/conf.ts +4 -0
- package/styles/{base/loading.scss → loading.scss} +17 -4
- package/styles/modules.scss +1 -0
- package/styles/select.scss +24 -6
- package/styles/table.scss +0 -1
- package/styles/toolbar.scss +9 -5
- package/styles/v-x-e-table.scss +2 -0
- package/styles/variable.scss +0 -4
- package/types/form-item.d.ts +16 -1
- package/types/form.d.ts +1 -1
- package/types/select.d.ts +19 -4
- package/types/table.d.ts +14 -0
package/README.md
CHANGED
package/README.zh-TW.md
CHANGED
|
@@ -25,10 +25,6 @@
|
|
|
25
25
|
* [x] v3.0 基於 vue2.6+,支持現代瀏覽器並保留相容IE11,提升渲染效能
|
|
26
26
|
* [x] v4.0 基于 vue3.0+,只支持現代瀏覽器,不支持IE
|
|
27
27
|
|
|
28
|
-
## QQ 交流群
|
|
29
|
-
|
|
30
|
-

|
|
31
|
-
|
|
32
28
|
## 瀏覽器支持
|
|
33
29
|
|
|
34
30
|
 |  |  |  | 
|
package/es/edit/src/hook.js
CHANGED
|
@@ -267,7 +267,7 @@ var editHook = {
|
|
|
267
267
|
var treeOpts = computeTreeOpts.value;
|
|
268
268
|
var transform = treeOpts.transform;
|
|
269
269
|
var actived = editStore.actived, removeList = editStore.removeList, insertList = editStore.insertList;
|
|
270
|
-
var
|
|
270
|
+
var checkField = checkboxOpts.checkField;
|
|
271
271
|
var rest = [];
|
|
272
272
|
if (!rows) {
|
|
273
273
|
rows = tableFullData;
|
|
@@ -282,7 +282,7 @@ var editHook = {
|
|
|
282
282
|
}
|
|
283
283
|
});
|
|
284
284
|
// 如果绑定了多选属性,则更新状态
|
|
285
|
-
if (!
|
|
285
|
+
if (!checkField) {
|
|
286
286
|
rows.forEach(function (row) {
|
|
287
287
|
var sIndex = $xetable.findRowIndexOf(selection, row);
|
|
288
288
|
if (sIndex > -1) {
|
|
@@ -607,17 +607,18 @@ var editHook = {
|
|
|
607
607
|
var editConfig = props.editConfig, mouseConfig = props.mouseConfig;
|
|
608
608
|
var editStore = reactData.editStore, tableColumn = reactData.tableColumn;
|
|
609
609
|
var editOpts = computeEditOpts.value;
|
|
610
|
-
var mode = editOpts.mode
|
|
610
|
+
var mode = editOpts.mode;
|
|
611
611
|
var actived = editStore.actived;
|
|
612
612
|
var row = params.row, column = params.column;
|
|
613
613
|
var editRender = column.editRender;
|
|
614
614
|
var cell = (params.cell || $xetable.getCell(row, column));
|
|
615
|
+
var beforeEditMethod = editOpts.beforeEditMethod || editOpts.activeMethod;
|
|
615
616
|
params.cell = cell;
|
|
616
617
|
if (isEnableConf(editConfig) && isEnableConf(editRender) && cell) {
|
|
617
618
|
if (actived.row !== row || (mode === 'cell' ? actived.column !== column : false)) {
|
|
618
619
|
// 判断是否禁用编辑
|
|
619
620
|
var type = 'edit-disabled';
|
|
620
|
-
if (!
|
|
621
|
+
if (!beforeEditMethod || beforeEditMethod(__assign(__assign({}, params), { $table: $xetable }))) {
|
|
621
622
|
if (mouseConfig) {
|
|
622
623
|
editMethods.clearSelected();
|
|
623
624
|
if ($xetable.clearCellAreas) {
|
|
@@ -2,11 +2,11 @@ import { defineComponent, h, createCommentVNode, ref, computed, reactive, inject
|
|
|
2
2
|
import XEUtils from 'xe-utils';
|
|
3
3
|
import GlobalConfig from '../../v-x-e-table/src/conf';
|
|
4
4
|
import { formatText } from '../../tools/utils';
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
5
|
+
import VxeModalComponent from '../../modal/src/modal';
|
|
6
|
+
import VxeInputComponent from '../../input/src/input';
|
|
7
|
+
import VxeCheckboxComponent from '../../checkbox/src/checkbox';
|
|
8
|
+
import VxeSelectComponent from '../../select/src/select';
|
|
9
|
+
import VxeButtonComponent from '../../button/src/button';
|
|
10
10
|
export default defineComponent({
|
|
11
11
|
name: 'VxeExportPanel',
|
|
12
12
|
props: {
|
|
@@ -173,7 +173,7 @@ export default defineComponent({
|
|
|
173
173
|
}, colTitle)
|
|
174
174
|
]));
|
|
175
175
|
});
|
|
176
|
-
return h(
|
|
176
|
+
return h(VxeModalComponent, {
|
|
177
177
|
modelValue: storeData.visible,
|
|
178
178
|
title: GlobalConfig.i18n(isPrint ? 'vxe.export.printTitle' : 'vxe.export.expTitle'),
|
|
179
179
|
width: 660,
|
|
@@ -202,7 +202,7 @@ export default defineComponent({
|
|
|
202
202
|
isPrint ? createCommentVNode() : h('tr', [
|
|
203
203
|
h('td', GlobalConfig.i18n('vxe.export.expName')),
|
|
204
204
|
h('td', [
|
|
205
|
-
h(
|
|
205
|
+
h(VxeInputComponent, {
|
|
206
206
|
ref: xInputFilename,
|
|
207
207
|
modelValue: defaultOptions.filename,
|
|
208
208
|
type: 'text',
|
|
@@ -217,7 +217,7 @@ export default defineComponent({
|
|
|
217
217
|
isPrint ? createCommentVNode() : h('tr', [
|
|
218
218
|
h('td', GlobalConfig.i18n('vxe.export.expType')),
|
|
219
219
|
h('td', [
|
|
220
|
-
h(
|
|
220
|
+
h(VxeSelectComponent, {
|
|
221
221
|
modelValue: defaultOptions.type,
|
|
222
222
|
options: storeData.typeList.map(function (item) {
|
|
223
223
|
return {
|
|
@@ -234,7 +234,7 @@ export default defineComponent({
|
|
|
234
234
|
isPrint || showSheet ? h('tr', [
|
|
235
235
|
h('td', GlobalConfig.i18n('vxe.export.expSheetName')),
|
|
236
236
|
h('td', [
|
|
237
|
-
h(
|
|
237
|
+
h(VxeInputComponent, {
|
|
238
238
|
ref: xInputSheetname,
|
|
239
239
|
modelValue: defaultOptions.sheetName,
|
|
240
240
|
type: 'text',
|
|
@@ -249,7 +249,7 @@ export default defineComponent({
|
|
|
249
249
|
h('tr', [
|
|
250
250
|
h('td', GlobalConfig.i18n('vxe.export.expMode')),
|
|
251
251
|
h('td', [
|
|
252
|
-
h(
|
|
252
|
+
h(VxeSelectComponent, {
|
|
253
253
|
modelValue: defaultOptions.mode,
|
|
254
254
|
options: storeData.modeList.map(function (item) {
|
|
255
255
|
return {
|
|
@@ -306,7 +306,7 @@ export default defineComponent({
|
|
|
306
306
|
h('div', {
|
|
307
307
|
class: 'vxe-export--panel-option-row'
|
|
308
308
|
}, [
|
|
309
|
-
h(
|
|
309
|
+
h(VxeCheckboxComponent, {
|
|
310
310
|
modelValue: defaultOptions.isHeader,
|
|
311
311
|
title: GlobalConfig.i18n('vxe.export.expHeaderTitle'),
|
|
312
312
|
content: GlobalConfig.i18n('vxe.export.expOptHeader'),
|
|
@@ -314,7 +314,7 @@ export default defineComponent({
|
|
|
314
314
|
defaultOptions.isHeader = value;
|
|
315
315
|
}
|
|
316
316
|
}),
|
|
317
|
-
h(
|
|
317
|
+
h(VxeCheckboxComponent, {
|
|
318
318
|
modelValue: defaultOptions.isFooter,
|
|
319
319
|
disabled: !storeData.hasFooter,
|
|
320
320
|
title: GlobalConfig.i18n('vxe.export.expFooterTitle'),
|
|
@@ -323,7 +323,7 @@ export default defineComponent({
|
|
|
323
323
|
defaultOptions.isFooter = value;
|
|
324
324
|
}
|
|
325
325
|
}),
|
|
326
|
-
h(
|
|
326
|
+
h(VxeCheckboxComponent, {
|
|
327
327
|
modelValue: defaultOptions.original,
|
|
328
328
|
title: GlobalConfig.i18n('vxe.export.expOriginalTitle'),
|
|
329
329
|
content: GlobalConfig.i18n('vxe.export.expOptOriginal'),
|
|
@@ -335,7 +335,7 @@ export default defineComponent({
|
|
|
335
335
|
h('div', {
|
|
336
336
|
class: 'vxe-export--panel-option-row'
|
|
337
337
|
}, [
|
|
338
|
-
h(
|
|
338
|
+
h(VxeCheckboxComponent, {
|
|
339
339
|
modelValue: isHeader && hasColgroup && supportMerge ? defaultOptions.isColgroup : false,
|
|
340
340
|
title: GlobalConfig.i18n('vxe.export.expColgroupTitle'),
|
|
341
341
|
disabled: !isHeader || !hasColgroup || !supportMerge,
|
|
@@ -344,7 +344,7 @@ export default defineComponent({
|
|
|
344
344
|
defaultOptions.isColgroup = value;
|
|
345
345
|
}
|
|
346
346
|
}),
|
|
347
|
-
h(
|
|
347
|
+
h(VxeCheckboxComponent, {
|
|
348
348
|
modelValue: hasMerge && supportMerge && checkedAll ? defaultOptions.isMerge : false,
|
|
349
349
|
title: GlobalConfig.i18n('vxe.export.expMergeTitle'),
|
|
350
350
|
disabled: !hasMerge || !supportMerge || !checkedAll,
|
|
@@ -353,7 +353,7 @@ export default defineComponent({
|
|
|
353
353
|
defaultOptions.isMerge = value;
|
|
354
354
|
}
|
|
355
355
|
}),
|
|
356
|
-
isPrint ? createCommentVNode() : h(
|
|
356
|
+
isPrint ? createCommentVNode() : h(VxeCheckboxComponent, {
|
|
357
357
|
modelValue: supportStyle ? defaultOptions.useStyle : false,
|
|
358
358
|
disabled: !supportStyle,
|
|
359
359
|
title: GlobalConfig.i18n('vxe.export.expUseStyleTitle'),
|
|
@@ -362,7 +362,7 @@ export default defineComponent({
|
|
|
362
362
|
defaultOptions.useStyle = value;
|
|
363
363
|
}
|
|
364
364
|
}),
|
|
365
|
-
h(
|
|
365
|
+
h(VxeCheckboxComponent, {
|
|
366
366
|
modelValue: hasTree ? defaultOptions.isAllExpand : false,
|
|
367
367
|
disabled: !hasTree,
|
|
368
368
|
title: GlobalConfig.i18n('vxe.export.expAllExpandTitle'),
|
|
@@ -380,11 +380,11 @@ export default defineComponent({
|
|
|
380
380
|
h('div', {
|
|
381
381
|
class: 'vxe-export--panel-btns'
|
|
382
382
|
}, [
|
|
383
|
-
h(
|
|
383
|
+
h(VxeButtonComponent, {
|
|
384
384
|
content: GlobalConfig.i18n('vxe.export.expCancel'),
|
|
385
385
|
onClick: cancelEvent
|
|
386
386
|
}),
|
|
387
|
-
h(
|
|
387
|
+
h(VxeButtonComponent, {
|
|
388
388
|
ref: xButtonConfirm,
|
|
389
389
|
status: 'primary',
|
|
390
390
|
content: GlobalConfig.i18n(isPrint ? 'vxe.export.expPrint' : 'vxe.export.expConfirm'),
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { defineComponent, h, ref, computed, inject, reactive, nextTick } from 'vue';
|
|
2
2
|
import XEUtils from 'xe-utils';
|
|
3
3
|
import GlobalConfig from '../../v-x-e-table/src/conf';
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
4
|
+
import VxeModalComponent from '../../modal/src/modal';
|
|
5
|
+
import VxeRadioGroupComponent from '../../radio/src/group';
|
|
6
|
+
import VxeRadioComponent from '../../radio/src/radio';
|
|
7
|
+
import VxeButtonComponent from '../../button/src/button';
|
|
8
8
|
import { parseFile } from '../../tools/utils';
|
|
9
9
|
export default defineComponent({
|
|
10
10
|
name: 'VxeImportPanel',
|
|
@@ -79,7 +79,7 @@ export default defineComponent({
|
|
|
79
79
|
var selectName = computeSelectName.value;
|
|
80
80
|
var hasFile = computeHasFile.value;
|
|
81
81
|
var parseTypeLabel = computeParseTypeLabel.value;
|
|
82
|
-
return h(
|
|
82
|
+
return h(VxeModalComponent, {
|
|
83
83
|
modelValue: storeData.visible,
|
|
84
84
|
title: GlobalConfig.i18n('vxe.import.impTitle'),
|
|
85
85
|
width: 440,
|
|
@@ -130,13 +130,13 @@ export default defineComponent({
|
|
|
130
130
|
h('tr', [
|
|
131
131
|
h('td', GlobalConfig.i18n('vxe.import.impOpts')),
|
|
132
132
|
h('td', [
|
|
133
|
-
h(
|
|
133
|
+
h(VxeRadioGroupComponent, {
|
|
134
134
|
modelValue: defaultOptions.mode,
|
|
135
135
|
'onUpdate:modelValue': function (value) {
|
|
136
136
|
defaultOptions.mode = value;
|
|
137
137
|
}
|
|
138
138
|
}, {
|
|
139
|
-
default: function () { return storeData.modeList.map(function (item) { return h(
|
|
139
|
+
default: function () { return storeData.modeList.map(function (item) { return h(VxeRadioComponent, { label: item.value, content: GlobalConfig.i18n(item.label) }); }); }
|
|
140
140
|
})
|
|
141
141
|
])
|
|
142
142
|
])
|
|
@@ -145,11 +145,11 @@ export default defineComponent({
|
|
|
145
145
|
h('div', {
|
|
146
146
|
class: 'vxe-export--panel-btns'
|
|
147
147
|
}, [
|
|
148
|
-
h(
|
|
148
|
+
h(VxeButtonComponent, {
|
|
149
149
|
content: GlobalConfig.i18n('vxe.import.impCancel'),
|
|
150
150
|
onClick: cancelEvent
|
|
151
151
|
}),
|
|
152
|
-
h(
|
|
152
|
+
h(VxeButtonComponent, {
|
|
153
153
|
status: 'primary',
|
|
154
154
|
disabled: !hasFile,
|
|
155
155
|
content: GlobalConfig.i18n('vxe.import.impConfirm'),
|
package/es/filter/src/hook.js
CHANGED
|
@@ -120,7 +120,7 @@ var tableFilterHook = {
|
|
|
120
120
|
filterStore.maxHeight = maxHeight;
|
|
121
121
|
});
|
|
122
122
|
}
|
|
123
|
-
$xetable.dispatchEvent('filter-visible', { column: column, property: column.
|
|
123
|
+
$xetable.dispatchEvent('filter-visible', { column: column, field: column.field, property: column.field, filterList: $xetable.getCheckedFilters(), visible: filterStore.visible }, evnt);
|
|
124
124
|
},
|
|
125
125
|
handleClearFilter: function (column) {
|
|
126
126
|
if (column) {
|
|
@@ -150,7 +150,7 @@ var tableFilterHook = {
|
|
|
150
150
|
var filterStore = reactData.filterStore, oldScrollXLoad = reactData.scrollXLoad, oldScrollYLoad = reactData.scrollYLoad;
|
|
151
151
|
var filterOpts = computeFilterOpts.value;
|
|
152
152
|
var column = filterStore.column;
|
|
153
|
-
var
|
|
153
|
+
var field = column.field;
|
|
154
154
|
var values = [];
|
|
155
155
|
var datas = [];
|
|
156
156
|
column.filters.forEach(function (item) {
|
|
@@ -165,7 +165,7 @@ var tableFilterHook = {
|
|
|
165
165
|
$xetable.handleTableData(true);
|
|
166
166
|
$xetable.checkSelectionStatus();
|
|
167
167
|
}
|
|
168
|
-
$xetable.dispatchEvent('filter-change', { column: column, property:
|
|
168
|
+
$xetable.dispatchEvent('filter-change', { column: column, field: field, property: field, values: values, datas: datas, filters: filterList, filterList: filterList }, evnt);
|
|
169
169
|
$xetable.closeFilter();
|
|
170
170
|
$xetable.updateFooter().then(function () {
|
|
171
171
|
var scrollXLoad = reactData.scrollXLoad, scrollYLoad = reactData.scrollYLoad;
|
|
@@ -259,7 +259,7 @@ var tableFilterHook = {
|
|
|
259
259
|
var tableFullColumn = internalData.tableFullColumn;
|
|
260
260
|
var filterList = [];
|
|
261
261
|
tableFullColumn.filter(function (column) {
|
|
262
|
-
var
|
|
262
|
+
var field = column.field, filters = column.filters;
|
|
263
263
|
var valueList = [];
|
|
264
264
|
var dataList = [];
|
|
265
265
|
if (filters && filters.length) {
|
|
@@ -270,7 +270,7 @@ var tableFilterHook = {
|
|
|
270
270
|
}
|
|
271
271
|
});
|
|
272
272
|
if (valueList.length) {
|
|
273
|
-
filterList.push({ column: column, property:
|
|
273
|
+
filterList.push({ column: column, field: field, property: field, values: valueList, datas: dataList });
|
|
274
274
|
}
|
|
275
275
|
}
|
|
276
276
|
});
|
package/es/form/src/form-item.js
CHANGED
|
@@ -84,7 +84,7 @@ export default defineComponent({
|
|
|
84
84
|
var showTooltip = itemOverflow === true || itemOverflow === 'tooltip';
|
|
85
85
|
var hasEllipsis = showTitle || showTooltip || showEllipsis;
|
|
86
86
|
var itemVisibleMethod = visibleMethod;
|
|
87
|
-
var params = { data: data, property: field, item: item, $form: $xeform };
|
|
87
|
+
var params = { data: data, field: field, property: field, item: item, $form: $xeform };
|
|
88
88
|
var isRequired = false;
|
|
89
89
|
if (rules) {
|
|
90
90
|
var itemRules = rules[field];
|
package/es/form/src/form.js
CHANGED
|
@@ -19,6 +19,7 @@ import { scrollToView } from '../../tools/dom';
|
|
|
19
19
|
import { createItem, handleFieldOrItem } from './util';
|
|
20
20
|
import { useSize } from '../../hooks/size';
|
|
21
21
|
import VxeFormConfigItem from './form-config-item';
|
|
22
|
+
import VxeLoading from '../../loading/index';
|
|
22
23
|
var Rule = /** @class */ (function () {
|
|
23
24
|
function Rule(rule) {
|
|
24
25
|
Object.assign(this, {
|
|
@@ -567,15 +568,13 @@ export default defineComponent({
|
|
|
567
568
|
class: 'vxe-form-slots',
|
|
568
569
|
ref: 'hideItem'
|
|
569
570
|
}, customLayout ? [] : (defaultSlot ? defaultSlot({}) : [])),
|
|
570
|
-
|
|
571
|
-
|
|
572
|
-
|
|
573
|
-
|
|
574
|
-
|
|
575
|
-
|
|
576
|
-
|
|
577
|
-
})
|
|
578
|
-
]),
|
|
571
|
+
/**
|
|
572
|
+
* 加载中
|
|
573
|
+
*/
|
|
574
|
+
h(VxeLoading, {
|
|
575
|
+
class: 'vxe-form--loading',
|
|
576
|
+
loading: loading
|
|
577
|
+
}),
|
|
579
578
|
/**
|
|
580
579
|
* 工具提示
|
|
581
580
|
*/
|
package/es/form/src/render.js
CHANGED
|
@@ -37,7 +37,7 @@ export function renderTitle($xeform, item) {
|
|
|
37
37
|
var slots = item.slots, field = item.field, itemRender = item.itemRender, titlePrefix = item.titlePrefix, titleSuffix = item.titleSuffix;
|
|
38
38
|
var tooltipOpts = computeTooltipOpts.value;
|
|
39
39
|
var compConf = isEnableConf(itemRender) ? VXETable.renderer.get(itemRender.name) : null;
|
|
40
|
-
var params = { data: data, property: field, item: item, $form: $xeform };
|
|
40
|
+
var params = { data: data, field: field, property: field, item: item, $form: $xeform };
|
|
41
41
|
var titleSlot = slots ? slots.title : null;
|
|
42
42
|
var contVNs = [];
|
|
43
43
|
var titVNs = [];
|
package/es/grid/src/grid.js
CHANGED
|
@@ -162,12 +162,15 @@ export default defineComponent({
|
|
|
162
162
|
clss.push(rowClassName ? (XEUtils.isFunction(rowClassName) ? rowClassName(params) : rowClassName) : '');
|
|
163
163
|
return clss;
|
|
164
164
|
};
|
|
165
|
-
var
|
|
165
|
+
var handleBeforeEditMethod = function (params) {
|
|
166
166
|
var editConfig = props.editConfig;
|
|
167
167
|
var pendingRecords = reactData.pendingRecords;
|
|
168
168
|
var $xetable = refTable.value;
|
|
169
|
-
var
|
|
170
|
-
|
|
169
|
+
var beforeEditMethod = editConfig ? (editConfig.beforeEditMethod || editConfig.activeMethod) : null;
|
|
170
|
+
if ($xetable.findRowIndexOf(pendingRecords, params.row) === -1) {
|
|
171
|
+
return !beforeEditMethod || beforeEditMethod(__assign(__assign({}, params), { $grid: $xegrid }));
|
|
172
|
+
}
|
|
173
|
+
return false;
|
|
171
174
|
};
|
|
172
175
|
var computeTableProps = computed(function () {
|
|
173
176
|
var seqConfig = props.seqConfig, pagerConfig = props.pagerConfig, loading = props.loading, editConfig = props.editConfig, proxyConfig = props.proxyConfig;
|
|
@@ -192,7 +195,7 @@ export default defineComponent({
|
|
|
192
195
|
}
|
|
193
196
|
}
|
|
194
197
|
if (editConfig) {
|
|
195
|
-
tableProps.editConfig = Object.assign({}, editConfig, {
|
|
198
|
+
tableProps.editConfig = Object.assign({}, editConfig, { beforeEditMethod: handleBeforeEditMethod });
|
|
196
199
|
}
|
|
197
200
|
return tableProps;
|
|
198
201
|
});
|
package/es/list/src/list.js
CHANGED
|
@@ -5,6 +5,7 @@ import { useSize } from '../../hooks/size';
|
|
|
5
5
|
import { createResizeEvent } from '../../tools/resize';
|
|
6
6
|
import { browse } from '../../tools/dom';
|
|
7
7
|
import { GlobalEvent } from '../../tools/event';
|
|
8
|
+
import VxeLoading from '../../loading/index';
|
|
8
9
|
export default defineComponent({
|
|
9
10
|
name: 'VxeList',
|
|
10
11
|
props: {
|
|
@@ -305,15 +306,13 @@ export default defineComponent({
|
|
|
305
306
|
}
|
|
306
307
|
}, slots.default ? slots.default({ items: items, $list: $xelist }) : [])
|
|
307
308
|
]),
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
})
|
|
316
|
-
])
|
|
309
|
+
/**
|
|
310
|
+
* 加载中
|
|
311
|
+
*/
|
|
312
|
+
h(VxeLoading, {
|
|
313
|
+
class: 'vxe-list--loading',
|
|
314
|
+
loading: loading
|
|
315
|
+
})
|
|
317
316
|
]);
|
|
318
317
|
};
|
|
319
318
|
$xelist.renderVN = renderVN;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { defineComponent, h } from 'vue';
|
|
2
|
+
import GlobalConfig from '../../v-x-e-table/src/conf';
|
|
3
|
+
export default defineComponent({
|
|
4
|
+
name: 'VxeLoading',
|
|
5
|
+
props: {
|
|
6
|
+
loading: Boolean
|
|
7
|
+
},
|
|
8
|
+
render: function () {
|
|
9
|
+
var icon = GlobalConfig.icon.LOADING;
|
|
10
|
+
var loadingText = GlobalConfig.loadingText;
|
|
11
|
+
var text = loadingText === null ? loadingText : GlobalConfig.i18n('vxe.loading.text');
|
|
12
|
+
return h('div', {
|
|
13
|
+
class: ['vxe-loading', {
|
|
14
|
+
'is--visible': this.loading
|
|
15
|
+
}]
|
|
16
|
+
}, [
|
|
17
|
+
h('div', {
|
|
18
|
+
class: 'vxe-loading--chunk'
|
|
19
|
+
}, [
|
|
20
|
+
icon ? h('i', {
|
|
21
|
+
class: icon
|
|
22
|
+
}) : h('div', {
|
|
23
|
+
class: 'vxe-loading--spinner'
|
|
24
|
+
}),
|
|
25
|
+
text ? h('div', {
|
|
26
|
+
class: 'vxe-loading--text'
|
|
27
|
+
}, "" + text) : null
|
|
28
|
+
])
|
|
29
|
+
]);
|
|
30
|
+
}
|
|
31
|
+
});
|
package/es/locale/lang/en-US.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
vxe: {
|
|
3
|
+
loading: {
|
|
4
|
+
text: 'Loading'
|
|
5
|
+
},
|
|
3
6
|
error: {
|
|
4
7
|
groupFixed: 'If you use group headers, the fixed columns must be set by group.',
|
|
5
8
|
groupMouseRange: 'Grouping headers and "{0}" cannot be used at the same time, which may cause errors.',
|
|
@@ -146,6 +149,8 @@ export default {
|
|
|
146
149
|
operError: 'Error occurred, operation failed!'
|
|
147
150
|
},
|
|
148
151
|
select: {
|
|
152
|
+
search: 'Search',
|
|
153
|
+
loadingText: 'Loading',
|
|
149
154
|
emptyText: 'No Data'
|
|
150
155
|
},
|
|
151
156
|
pager: {
|
package/es/locale/lang/ja-JP.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
vxe: {
|
|
3
|
+
loading: {
|
|
4
|
+
text: 'Loading'
|
|
5
|
+
},
|
|
3
6
|
error: {
|
|
4
7
|
groupFixed: 'グループのヘッダを使用すると、固定列はグループで設定しなければなりません',
|
|
5
8
|
groupMouseRange: 'グループ化ヘッダーと「{0}」は同時に使用できません。これによりエラーが発生する可能性があります',
|
|
@@ -146,6 +149,8 @@ export default {
|
|
|
146
149
|
operError: 'エラーが発生しました。操作が失敗しました'
|
|
147
150
|
},
|
|
148
151
|
select: {
|
|
152
|
+
search: 'Search',
|
|
153
|
+
loadingText: 'Loading',
|
|
149
154
|
emptyText: 'データがありません'
|
|
150
155
|
},
|
|
151
156
|
pager: {
|
package/es/locale/lang/zh-CN.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
vxe: {
|
|
3
|
+
loading: {
|
|
4
|
+
text: '加载中'
|
|
5
|
+
},
|
|
3
6
|
error: {
|
|
4
7
|
groupFixed: '如果使用分组表头,固定列必须按组设置',
|
|
5
8
|
groupMouseRange: '分组表头与 "{0}" 不能同时使用,这可能会出现错误',
|
|
@@ -146,6 +149,8 @@ export default {
|
|
|
146
149
|
operError: '发生错误,操作失败!'
|
|
147
150
|
},
|
|
148
151
|
select: {
|
|
152
|
+
search: '搜索',
|
|
153
|
+
loadingText: '加载中',
|
|
149
154
|
emptyText: '暂无数据'
|
|
150
155
|
},
|
|
151
156
|
pager: {
|
package/es/locale/lang/zh-TC.js
CHANGED
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
export default {
|
|
2
2
|
vxe: {
|
|
3
|
+
loading: {
|
|
4
|
+
text: '加載中'
|
|
5
|
+
},
|
|
3
6
|
error: {
|
|
4
7
|
groupFixed: '如果使用分組表頭,固定列必須按組設定',
|
|
5
8
|
groupMouseRange: '分组表頭與 "{0}" 不能同時使用,這可能會出現錯誤',
|
|
@@ -146,6 +149,8 @@ export default {
|
|
|
146
149
|
operError: '發生錯誤,操作失敗!'
|
|
147
150
|
},
|
|
148
151
|
select: {
|
|
152
|
+
search: '蒐索',
|
|
153
|
+
loadingText: '加載中',
|
|
149
154
|
emptyText: '暫無資料'
|
|
150
155
|
},
|
|
151
156
|
pager: {
|
package/es/menu/src/hooks.js
CHANGED
|
@@ -117,12 +117,6 @@ var tableMenuHook = {
|
|
|
117
117
|
menuPrivateMethods = {
|
|
118
118
|
/**
|
|
119
119
|
* 处理菜单的移动
|
|
120
|
-
* @param evnt
|
|
121
|
-
* @param ctxMenuStore
|
|
122
|
-
* @param property
|
|
123
|
-
* @param hasOper
|
|
124
|
-
* @param operRest
|
|
125
|
-
* @param menuList
|
|
126
120
|
*/
|
|
127
121
|
moveCtxMenu: function (evnt, ctxMenuStore, property, hasOper, operRest, menuList) {
|
|
128
122
|
var selectItem;
|
package/es/modal/src/modal.js
CHANGED
|
@@ -18,6 +18,7 @@ import { errLog } from '../../tools/log';
|
|
|
18
18
|
import { GlobalEvent, hasEventKey, EVENT_KEYS } from '../../tools/event';
|
|
19
19
|
import GlobalConfig from '../../v-x-e-table/src/conf';
|
|
20
20
|
import VxeButtonConstructor from '../../button/src/button';
|
|
21
|
+
import VxeLoading from '../../loading/index';
|
|
21
22
|
export var allActivedModals = [];
|
|
22
23
|
export var msgQueue = [];
|
|
23
24
|
export default defineComponent({
|
|
@@ -722,15 +723,13 @@ export default defineComponent({
|
|
|
722
723
|
class: 'vxe-modal--content'
|
|
723
724
|
}, defaultSlot ? (!reactData.inited || (props.destroyOnClose && !reactData.visible) ? [] : defaultSlot({ $modal: $xemodal })) : getFuncText(content)));
|
|
724
725
|
if (!isMsg) {
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
|
|
728
|
-
|
|
729
|
-
|
|
730
|
-
|
|
731
|
-
|
|
732
|
-
})
|
|
733
|
-
]));
|
|
726
|
+
/**
|
|
727
|
+
* 加载中
|
|
728
|
+
*/
|
|
729
|
+
contVNs.push(h(VxeLoading, {
|
|
730
|
+
class: 'vxe-modal--loading',
|
|
731
|
+
loading: props.loading
|
|
732
|
+
}));
|
|
734
733
|
}
|
|
735
734
|
return [
|
|
736
735
|
h('div', {
|