vxe-table 4.7.83 → 4.7.85
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/es/grid/src/grid.js +5 -5
- package/es/locale/lang/en-US.js +2 -1
- package/es/locale/lang/es-ES.js +2 -1
- package/es/locale/lang/hu-HU.js +2 -1
- package/es/locale/lang/ja-JP.js +2 -1
- package/es/locale/lang/ko-KR.js +2 -1
- package/es/locale/lang/pt-BR.js +2 -1
- package/es/locale/lang/ru-RU.js +2 -1
- package/es/locale/lang/uk-UA.js +2 -1
- package/es/locale/lang/vi-VN.js +2 -1
- package/es/locale/lang/zh-CHT.js +2 -1
- package/es/locale/lang/zh-CN.js +2 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/render/index.js +10 -0
- package/es/table/src/table.js +255 -261
- package/es/table/style.css +1 -1
- package/es/table/style.min.css +1 -1
- package/es/toolbar/src/toolbar.js +6 -6
- package/es/ui/index.js +2 -2
- package/es/ui/src/log.js +1 -1
- package/es/vxe-table/style.css +1 -1
- package/es/vxe-table/style.min.css +1 -1
- package/helper/vetur/attributes.json +1 -1
- package/helper/vetur/tags.json +1 -1
- package/lib/grid/src/grid.js +5 -5
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +294 -282
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/en-US.js +2 -1
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +2 -1
- package/lib/locale/lang/es-ES.js +2 -1
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +2 -1
- package/lib/locale/lang/hu-HU.js +2 -1
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/hu-HU.umd.js +2 -1
- package/lib/locale/lang/ja-JP.js +2 -1
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +2 -1
- package/lib/locale/lang/ko-KR.js +2 -1
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/ko-KR.umd.js +2 -1
- package/lib/locale/lang/pt-BR.js +2 -1
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +2 -1
- package/lib/locale/lang/ru-RU.js +2 -1
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/ru-RU.umd.js +2 -1
- package/lib/locale/lang/uk-UA.js +2 -1
- package/lib/locale/lang/uk-UA.min.js +1 -1
- package/lib/locale/lang/uk-UA.umd.js +2 -1
- package/lib/locale/lang/vi-VN.js +2 -1
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/zh-CHT.js +2 -1
- package/lib/locale/lang/zh-CHT.min.js +1 -1
- package/lib/locale/lang/zh-CN.js +2 -1
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +2 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/render/index.js +15 -0
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/table.js +260 -266
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/style/style.css +1 -1
- package/lib/table/style/style.min.css +1 -1
- package/lib/toolbar/src/toolbar.js +6 -6
- package/lib/toolbar/src/toolbar.min.js +1 -1
- package/lib/ui/index.js +2 -2
- package/lib/ui/index.min.js +1 -1
- package/lib/ui/src/log.js +1 -1
- package/lib/ui/src/log.min.js +1 -1
- package/lib/vxe-table/style/style.css +1 -1
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/grid/src/grid.ts +5 -5
- package/packages/locale/lang/en-US.ts +2 -1
- package/packages/locale/lang/es-ES.ts +2 -1
- package/packages/locale/lang/hu-HU.ts +2 -1
- package/packages/locale/lang/ja-JP.ts +2 -1
- package/packages/locale/lang/ko-KR.ts +2 -1
- package/packages/locale/lang/pt-BR.ts +2 -1
- package/packages/locale/lang/ru-RU.ts +2 -1
- package/packages/locale/lang/uk-UA.ts +2 -1
- package/packages/locale/lang/vi-VN.ts +2 -1
- package/packages/locale/lang/zh-CHT.ts +2 -1
- package/packages/locale/lang/zh-CN.ts +2 -1
- package/packages/table/render/index.ts +14 -0
- package/packages/table/src/table.ts +261 -267
- package/packages/toolbar/src/toolbar.ts +6 -6
- package/styles/components/table.scss +5 -1
- /package/es/{iconfont.1727355554097.ttf → iconfont.1727599604340.ttf} +0 -0
- /package/es/{iconfont.1727355554097.woff → iconfont.1727599604340.woff} +0 -0
- /package/es/{iconfont.1727355554097.woff2 → iconfont.1727599604340.woff2} +0 -0
- /package/lib/{iconfont.1727355554097.ttf → iconfont.1727599604340.ttf} +0 -0
- /package/lib/{iconfont.1727355554097.woff → iconfont.1727599604340.woff} +0 -0
- /package/lib/{iconfont.1727355554097.woff2 → iconfont.1727599604340.woff2} +0 -0
package/es/table/src/table.js
CHANGED
|
@@ -362,13 +362,13 @@ export default defineComponent({
|
|
|
362
362
|
return '';
|
|
363
363
|
});
|
|
364
364
|
const computeValidOpts = computed(() => {
|
|
365
|
-
return Object.assign({}, getConfig().table.validConfig, props.validConfig);
|
|
365
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.validConfig, true), props.validConfig);
|
|
366
366
|
});
|
|
367
367
|
const computeSXOpts = computed(() => {
|
|
368
|
-
return Object.assign({}, getConfig().table.scrollX, props.scrollX);
|
|
368
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.scrollX, true), props.scrollX);
|
|
369
369
|
});
|
|
370
370
|
const computeSYOpts = computed(() => {
|
|
371
|
-
return Object.assign({}, getConfig().table.scrollY, props.scrollY);
|
|
371
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.scrollY, true), props.scrollY);
|
|
372
372
|
});
|
|
373
373
|
const computeRowHeightMaps = computed(() => {
|
|
374
374
|
return {
|
|
@@ -379,29 +379,29 @@ export default defineComponent({
|
|
|
379
379
|
};
|
|
380
380
|
});
|
|
381
381
|
const computeColumnOpts = computed(() => {
|
|
382
|
-
return Object.assign({}, getConfig().table.columnConfig, props.columnConfig);
|
|
382
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.columnConfig, true), props.columnConfig);
|
|
383
383
|
});
|
|
384
384
|
const computeRowOpts = computed(() => {
|
|
385
|
-
return Object.assign({}, getConfig().table.rowConfig, props.rowConfig);
|
|
385
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.rowConfig, true), props.rowConfig);
|
|
386
386
|
});
|
|
387
387
|
const computeResizeOpts = computed(() => {
|
|
388
|
-
return Object.assign({}, getConfig().table.resizeConfig, props.resizeConfig);
|
|
388
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.resizeConfig, true), props.resizeConfig);
|
|
389
389
|
});
|
|
390
390
|
const computeResizableOpts = computed(() => {
|
|
391
|
-
return Object.assign({}, getConfig().table.resizableConfig, props.resizableConfig);
|
|
391
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.resizableConfig, true), props.resizableConfig);
|
|
392
392
|
});
|
|
393
393
|
const computeSeqOpts = computed(() => {
|
|
394
|
-
return Object.assign({ startIndex: 0 }, getConfig().table.seqConfig, props.seqConfig);
|
|
394
|
+
return Object.assign({ startIndex: 0 }, XEUtils.clone(getConfig().table.seqConfig, true), props.seqConfig);
|
|
395
395
|
});
|
|
396
396
|
const computeRadioOpts = computed(() => {
|
|
397
|
-
return Object.assign({}, getConfig().table.radioConfig, props.radioConfig);
|
|
397
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.radioConfig, true), props.radioConfig);
|
|
398
398
|
});
|
|
399
399
|
const computeCheckboxOpts = computed(() => {
|
|
400
|
-
return Object.assign({}, getConfig().table.checkboxConfig, props.checkboxConfig);
|
|
400
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.checkboxConfig, true), props.checkboxConfig);
|
|
401
401
|
});
|
|
402
402
|
let computeTooltipOpts = ref();
|
|
403
403
|
computeTooltipOpts = computed(() => {
|
|
404
|
-
return Object.assign({}, getConfig().tooltip, getConfig().table.tooltipConfig, props.tooltipConfig);
|
|
404
|
+
return Object.assign({}, XEUtils.clone(getConfig().tooltip, true), XEUtils.clone(getConfig().table.tooltipConfig, true), props.tooltipConfig);
|
|
405
405
|
});
|
|
406
406
|
const computeTipConfig = computed(() => {
|
|
407
407
|
const tooltipOpts = computeTooltipOpts.value;
|
|
@@ -412,31 +412,31 @@ export default defineComponent({
|
|
|
412
412
|
return Object.assign({ isArrow: false }, tooltipOpts);
|
|
413
413
|
});
|
|
414
414
|
const computeEditOpts = computed(() => {
|
|
415
|
-
return Object.assign({}, getConfig().table.editConfig, props.editConfig);
|
|
415
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.editConfig, true), props.editConfig);
|
|
416
416
|
});
|
|
417
417
|
const computeSortOpts = computed(() => {
|
|
418
|
-
return Object.assign({ orders: ['asc', 'desc', null] }, getConfig().table.sortConfig, props.sortConfig);
|
|
418
|
+
return Object.assign({ orders: ['asc', 'desc', null] }, XEUtils.clone(getConfig().table.sortConfig, true), props.sortConfig);
|
|
419
419
|
});
|
|
420
420
|
const computeFilterOpts = computed(() => {
|
|
421
|
-
return Object.assign({}, getConfig().table.filterConfig, props.filterConfig);
|
|
421
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.filterConfig, true), props.filterConfig);
|
|
422
422
|
});
|
|
423
423
|
const computeMouseOpts = computed(() => {
|
|
424
|
-
return Object.assign({}, getConfig().table.mouseConfig, props.mouseConfig);
|
|
424
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.mouseConfig, true), props.mouseConfig);
|
|
425
425
|
});
|
|
426
426
|
const computeAreaOpts = computed(() => {
|
|
427
|
-
return Object.assign({}, getConfig().table.areaConfig, props.areaConfig);
|
|
427
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.areaConfig, true), props.areaConfig);
|
|
428
428
|
});
|
|
429
429
|
const computeKeyboardOpts = computed(() => {
|
|
430
|
-
return Object.assign({}, getConfig().table.keyboardConfig, props.keyboardConfig);
|
|
430
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.keyboardConfig, true), props.keyboardConfig);
|
|
431
431
|
});
|
|
432
432
|
const computeClipOpts = computed(() => {
|
|
433
|
-
return Object.assign({}, getConfig().table.clipConfig, props.clipConfig);
|
|
433
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.clipConfig, true), props.clipConfig);
|
|
434
434
|
});
|
|
435
435
|
const computeFNROpts = computed(() => {
|
|
436
|
-
return Object.assign({}, getConfig().table.fnrConfig, props.fnrConfig);
|
|
436
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.fnrConfig, true), props.fnrConfig);
|
|
437
437
|
});
|
|
438
438
|
const computeMenuOpts = computed(() => {
|
|
439
|
-
return Object.assign({}, getConfig().table.menuConfig, props.menuConfig);
|
|
439
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.menuConfig, true), props.menuConfig);
|
|
440
440
|
});
|
|
441
441
|
const computeHeaderMenu = computed(() => {
|
|
442
442
|
const menuOpts = computeMenuOpts.value;
|
|
@@ -471,31 +471,31 @@ export default defineComponent({
|
|
|
471
471
|
return rest;
|
|
472
472
|
});
|
|
473
473
|
const computeExportOpts = computed(() => {
|
|
474
|
-
return Object.assign({}, getConfig().table.exportConfig, props.exportConfig);
|
|
474
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.exportConfig, true), props.exportConfig);
|
|
475
475
|
});
|
|
476
476
|
const computeImportOpts = computed(() => {
|
|
477
|
-
return Object.assign({}, getConfig().table.importConfig, props.importConfig);
|
|
477
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.importConfig, true), props.importConfig);
|
|
478
478
|
});
|
|
479
479
|
const computePrintOpts = computed(() => {
|
|
480
|
-
return Object.assign({}, getConfig().table.printConfig, props.printConfig);
|
|
480
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.printConfig, true), props.printConfig);
|
|
481
481
|
});
|
|
482
482
|
const computeExpandOpts = computed(() => {
|
|
483
|
-
return Object.assign({}, getConfig().table.expandConfig, props.expandConfig);
|
|
483
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.expandConfig, true), props.expandConfig);
|
|
484
484
|
});
|
|
485
485
|
const computeTreeOpts = computed(() => {
|
|
486
|
-
return Object.assign({}, getConfig().table.treeConfig, props.treeConfig);
|
|
486
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.treeConfig, true), props.treeConfig);
|
|
487
487
|
});
|
|
488
488
|
const computeEmptyOpts = computed(() => {
|
|
489
|
-
return Object.assign({}, getConfig().table.emptyRender, props.emptyRender);
|
|
489
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.emptyRender, true), props.emptyRender);
|
|
490
490
|
});
|
|
491
491
|
const computeLoadingOpts = computed(() => {
|
|
492
|
-
return Object.assign({}, getConfig().table.loadingConfig, props.loadingConfig);
|
|
492
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.loadingConfig, true), props.loadingConfig);
|
|
493
493
|
});
|
|
494
494
|
const computeCellOffsetWidth = computed(() => {
|
|
495
495
|
return props.border ? Math.max(2, Math.ceil(reactData.scrollbarWidth / reactData.tableColumn.length)) : 1;
|
|
496
496
|
});
|
|
497
497
|
const computeCustomOpts = computed(() => {
|
|
498
|
-
return Object.assign({}, getConfig().table.customConfig, props.customConfig);
|
|
498
|
+
return Object.assign({}, XEUtils.clone(getConfig().table.customConfig, true), props.customConfig);
|
|
499
499
|
});
|
|
500
500
|
const computeAutoWidthColumnList = computed(() => {
|
|
501
501
|
const { visibleColumn } = internalData;
|
|
@@ -5165,12 +5165,6 @@ export default defineComponent({
|
|
|
5165
5165
|
setCellValue(selected.row, selected.column, null);
|
|
5166
5166
|
$xeTable.handleEdit(selected.args, evnt);
|
|
5167
5167
|
}
|
|
5168
|
-
const afterEditMethod = editOpts.afterEditMethod;
|
|
5169
|
-
if (afterEditMethod) {
|
|
5170
|
-
nextTick(() => {
|
|
5171
|
-
afterEditMethod(params);
|
|
5172
|
-
});
|
|
5173
|
-
}
|
|
5174
5168
|
}
|
|
5175
5169
|
}
|
|
5176
5170
|
}
|
|
@@ -6613,6 +6607,232 @@ export default defineComponent({
|
|
|
6613
6607
|
tableMethods.recalculate();
|
|
6614
6608
|
}
|
|
6615
6609
|
}
|
|
6610
|
+
const renderVN = () => {
|
|
6611
|
+
const { loading, stripe, showHeader, height, treeConfig, mouseConfig, showFooter, highlightCell, highlightHoverRow, highlightHoverColumn, editConfig, editRules } = props;
|
|
6612
|
+
const { isCalcColumn, isGroup, overflowX, overflowY, scrollXLoad, scrollYLoad, scrollbarHeight, tableData, tableColumn, tableGroupColumn, footerTableData, initStore, columnStore, filterStore, customStore, tooltipStore } = reactData;
|
|
6613
|
+
const { leftList, rightList } = columnStore;
|
|
6614
|
+
const loadingSlot = slots.loading;
|
|
6615
|
+
const tipConfig = computeTipConfig.value;
|
|
6616
|
+
const validOpts = computeValidOpts.value;
|
|
6617
|
+
const checkboxOpts = computeCheckboxOpts.value;
|
|
6618
|
+
const treeOpts = computeTreeOpts.value;
|
|
6619
|
+
const rowOpts = computeRowOpts.value;
|
|
6620
|
+
const columnOpts = computeColumnOpts.value;
|
|
6621
|
+
const vSize = computeSize.value;
|
|
6622
|
+
const tableBorder = computeTableBorder.value;
|
|
6623
|
+
const mouseOpts = computeMouseOpts.value;
|
|
6624
|
+
const validTipOpts = computeValidTipOpts.value;
|
|
6625
|
+
const loadingOpts = computeLoadingOpts.value;
|
|
6626
|
+
const isMenu = computeIsMenu.value;
|
|
6627
|
+
const currLoading = reactData._isLoading || loading;
|
|
6628
|
+
return h('div', {
|
|
6629
|
+
ref: refElem,
|
|
6630
|
+
class: ['vxe-table', 'vxe-table--render-default', `tid_${xID}`, `border--${tableBorder}`, {
|
|
6631
|
+
[`size--${vSize}`]: vSize,
|
|
6632
|
+
[`valid-msg--${validOpts.msgMode}`]: !!editRules,
|
|
6633
|
+
'vxe-editable': !!editConfig,
|
|
6634
|
+
'old-cell-valid': editRules && getConfig().cellVaildMode === 'obsolete',
|
|
6635
|
+
'cell--highlight': highlightCell,
|
|
6636
|
+
'cell--selected': mouseConfig && mouseOpts.selected,
|
|
6637
|
+
'cell--area': mouseConfig && mouseOpts.area,
|
|
6638
|
+
'row--highlight': rowOpts.isHover || highlightHoverRow,
|
|
6639
|
+
'column--highlight': columnOpts.isHover || highlightHoverColumn,
|
|
6640
|
+
'checkbox--range': checkboxOpts.range,
|
|
6641
|
+
'column--calc': isCalcColumn,
|
|
6642
|
+
'is--header': showHeader,
|
|
6643
|
+
'is--footer': showFooter,
|
|
6644
|
+
'is--group': isGroup,
|
|
6645
|
+
'is--tree-line': treeConfig && (treeOpts.showLine || treeOpts.line),
|
|
6646
|
+
'is--fixed-left': leftList.length,
|
|
6647
|
+
'is--fixed-right': rightList.length,
|
|
6648
|
+
'is--animat': !!props.animat,
|
|
6649
|
+
'is--padding': props.padding,
|
|
6650
|
+
'is--round': props.round,
|
|
6651
|
+
'is--stripe': !treeConfig && stripe,
|
|
6652
|
+
'is--loading': currLoading,
|
|
6653
|
+
'is--empty': !currLoading && !tableData.length,
|
|
6654
|
+
'is--scroll-y': overflowY,
|
|
6655
|
+
'is--scroll-x': overflowX,
|
|
6656
|
+
'is--virtual-x': scrollXLoad,
|
|
6657
|
+
'is--virtual-y': scrollYLoad
|
|
6658
|
+
}],
|
|
6659
|
+
spellcheck: false,
|
|
6660
|
+
onKeydown: keydownEvent
|
|
6661
|
+
}, [
|
|
6662
|
+
/**
|
|
6663
|
+
* 隐藏列
|
|
6664
|
+
*/
|
|
6665
|
+
h('div', {
|
|
6666
|
+
class: 'vxe-table-slots'
|
|
6667
|
+
}, slots.default ? slots.default({}) : []),
|
|
6668
|
+
h('div', {
|
|
6669
|
+
class: 'vxe-table--render-wrapper'
|
|
6670
|
+
}, [
|
|
6671
|
+
h('div', {
|
|
6672
|
+
class: 'vxe-table--main-wrapper'
|
|
6673
|
+
}, [
|
|
6674
|
+
/**
|
|
6675
|
+
* 表头
|
|
6676
|
+
*/
|
|
6677
|
+
showHeader
|
|
6678
|
+
? h(TableHeaderComponent, {
|
|
6679
|
+
ref: refTableHeader,
|
|
6680
|
+
tableData,
|
|
6681
|
+
tableColumn,
|
|
6682
|
+
tableGroupColumn
|
|
6683
|
+
})
|
|
6684
|
+
: createCommentVNode(),
|
|
6685
|
+
/**
|
|
6686
|
+
* 表体
|
|
6687
|
+
*/
|
|
6688
|
+
h(TableBodyComponent, {
|
|
6689
|
+
ref: refTableBody,
|
|
6690
|
+
tableData,
|
|
6691
|
+
tableColumn
|
|
6692
|
+
}),
|
|
6693
|
+
/**
|
|
6694
|
+
* 表尾
|
|
6695
|
+
*/
|
|
6696
|
+
showFooter
|
|
6697
|
+
? h(TableFooterComponent, {
|
|
6698
|
+
ref: refTableFooter,
|
|
6699
|
+
footerTableData,
|
|
6700
|
+
tableColumn
|
|
6701
|
+
})
|
|
6702
|
+
: createCommentVNode()
|
|
6703
|
+
]),
|
|
6704
|
+
h('div', {
|
|
6705
|
+
class: 'vxe-table--fixed-wrapper'
|
|
6706
|
+
}, [
|
|
6707
|
+
/**
|
|
6708
|
+
* 左侧固定区域
|
|
6709
|
+
*/
|
|
6710
|
+
leftList && leftList.length && overflowX ? renderFixed('left') : createCommentVNode(),
|
|
6711
|
+
/**
|
|
6712
|
+
* 右侧固定区域
|
|
6713
|
+
*/
|
|
6714
|
+
rightList && rightList.length && overflowX ? renderFixed('right') : createCommentVNode()
|
|
6715
|
+
])
|
|
6716
|
+
]),
|
|
6717
|
+
/**
|
|
6718
|
+
* 空数据
|
|
6719
|
+
*/
|
|
6720
|
+
h('div', {
|
|
6721
|
+
ref: refEmptyPlaceholder,
|
|
6722
|
+
class: 'vxe-table--empty-placeholder'
|
|
6723
|
+
}, [
|
|
6724
|
+
h('div', {
|
|
6725
|
+
class: 'vxe-table--empty-content'
|
|
6726
|
+
}, renderEmptyContenet())
|
|
6727
|
+
]),
|
|
6728
|
+
/**
|
|
6729
|
+
* 边框线
|
|
6730
|
+
*/
|
|
6731
|
+
h('div', {
|
|
6732
|
+
class: 'vxe-table--border-line'
|
|
6733
|
+
}),
|
|
6734
|
+
/**
|
|
6735
|
+
* 列宽线
|
|
6736
|
+
*/
|
|
6737
|
+
h('div', {
|
|
6738
|
+
ref: refCellResizeBar,
|
|
6739
|
+
class: 'vxe-table--resizable-bar',
|
|
6740
|
+
style: overflowX
|
|
6741
|
+
? {
|
|
6742
|
+
'padding-bottom': `${scrollbarHeight}px`
|
|
6743
|
+
}
|
|
6744
|
+
: null
|
|
6745
|
+
}),
|
|
6746
|
+
/**
|
|
6747
|
+
* 加载中
|
|
6748
|
+
*/
|
|
6749
|
+
VxeUILoadingComponent
|
|
6750
|
+
? h(VxeUILoadingComponent, {
|
|
6751
|
+
class: 'vxe-table--loading',
|
|
6752
|
+
modelValue: currLoading,
|
|
6753
|
+
icon: loadingOpts.icon,
|
|
6754
|
+
text: loadingOpts.text
|
|
6755
|
+
}, loadingSlot
|
|
6756
|
+
? {
|
|
6757
|
+
default: () => loadingSlot({ $table: $xeTable, $grid: $xeGrid })
|
|
6758
|
+
}
|
|
6759
|
+
: {})
|
|
6760
|
+
: createCommentVNode(),
|
|
6761
|
+
/**
|
|
6762
|
+
* 自定义列
|
|
6763
|
+
*/
|
|
6764
|
+
initStore.custom
|
|
6765
|
+
? h(TableCustomPanelComponent, {
|
|
6766
|
+
ref: refTableCustom,
|
|
6767
|
+
customStore
|
|
6768
|
+
})
|
|
6769
|
+
: createCommentVNode(),
|
|
6770
|
+
/**
|
|
6771
|
+
* 筛选
|
|
6772
|
+
*/
|
|
6773
|
+
initStore.filter
|
|
6774
|
+
? h(TableFilterPanelComponent, {
|
|
6775
|
+
ref: refTableFilter,
|
|
6776
|
+
filterStore
|
|
6777
|
+
})
|
|
6778
|
+
: createCommentVNode(),
|
|
6779
|
+
/**
|
|
6780
|
+
* 导入
|
|
6781
|
+
*/
|
|
6782
|
+
initStore.import && props.importConfig
|
|
6783
|
+
? h(TableImportPanelComponent, {
|
|
6784
|
+
defaultOptions: reactData.importParams,
|
|
6785
|
+
storeData: reactData.importStore
|
|
6786
|
+
})
|
|
6787
|
+
: createCommentVNode(),
|
|
6788
|
+
/**
|
|
6789
|
+
* 导出
|
|
6790
|
+
*/
|
|
6791
|
+
initStore.export && (props.exportConfig || props.printConfig)
|
|
6792
|
+
? h(TableExportPanelComponent, {
|
|
6793
|
+
defaultOptions: reactData.exportParams,
|
|
6794
|
+
storeData: reactData.exportStore
|
|
6795
|
+
})
|
|
6796
|
+
: createCommentVNode(),
|
|
6797
|
+
/**
|
|
6798
|
+
* 快捷菜单
|
|
6799
|
+
*/
|
|
6800
|
+
isMenu
|
|
6801
|
+
? h(TableMenuPanelComponent, {
|
|
6802
|
+
ref: refTableMenu
|
|
6803
|
+
})
|
|
6804
|
+
: createCommentVNode(),
|
|
6805
|
+
/**
|
|
6806
|
+
* 提示相关
|
|
6807
|
+
*/
|
|
6808
|
+
VxeUITooltipComponent
|
|
6809
|
+
? h('div', {}, [
|
|
6810
|
+
/**
|
|
6811
|
+
* 通用提示
|
|
6812
|
+
*/
|
|
6813
|
+
h(VxeUITooltipComponent, {
|
|
6814
|
+
ref: refCommTooltip,
|
|
6815
|
+
isArrow: false,
|
|
6816
|
+
enterable: false
|
|
6817
|
+
}),
|
|
6818
|
+
/**
|
|
6819
|
+
* 工具提示
|
|
6820
|
+
*/
|
|
6821
|
+
h(VxeUITooltipComponent, Object.assign({
|
|
6822
|
+
ref: refTooltip
|
|
6823
|
+
}, tipConfig, tooltipStore.currOpts)),
|
|
6824
|
+
/**
|
|
6825
|
+
* 校验提示
|
|
6826
|
+
*/
|
|
6827
|
+
props.editRules && validOpts.showMessage && (validOpts.message === 'default' ? !height : validOpts.message === 'tooltip')
|
|
6828
|
+
? h(VxeUITooltipComponent, Object.assign({ ref: refValidTooltip, class: [{
|
|
6829
|
+
'old-cell-valid': editRules && getConfig().cellVaildMode === 'obsolete'
|
|
6830
|
+
}, 'vxe-table--valid-error'] }, (validOpts.message === 'tooltip' || tableData.length === 1 ? validTipOpts : {})))
|
|
6831
|
+
: createCommentVNode()
|
|
6832
|
+
])
|
|
6833
|
+
: createCommentVNode()
|
|
6834
|
+
]);
|
|
6835
|
+
};
|
|
6616
6836
|
const dataFlag = ref(0);
|
|
6617
6837
|
watch(() => props.data ? props.data.length : -1, () => {
|
|
6618
6838
|
dataFlag.value++;
|
|
@@ -6966,233 +7186,6 @@ export default defineComponent({
|
|
|
6966
7186
|
globalEvents.off($xeTable, 'contextmenu');
|
|
6967
7187
|
tablePrivateMethods.preventEvent(null, 'unmounted', { $table: $xeTable });
|
|
6968
7188
|
});
|
|
6969
|
-
const renderVN = () => {
|
|
6970
|
-
const { loading, stripe, showHeader, height, treeConfig, mouseConfig, showFooter, highlightCell, highlightHoverRow, highlightHoverColumn, editConfig, editRules } = props;
|
|
6971
|
-
const { isCalcColumn, isGroup, overflowX, overflowY, scrollXLoad, scrollYLoad, scrollbarHeight, tableData, tableColumn, tableGroupColumn, footerTableData, initStore, columnStore, filterStore, customStore, tooltipStore } = reactData;
|
|
6972
|
-
const { leftList, rightList } = columnStore;
|
|
6973
|
-
const loadingSlot = slots.loading;
|
|
6974
|
-
const tipConfig = computeTipConfig.value;
|
|
6975
|
-
const validOpts = computeValidOpts.value;
|
|
6976
|
-
const checkboxOpts = computeCheckboxOpts.value;
|
|
6977
|
-
const treeOpts = computeTreeOpts.value;
|
|
6978
|
-
const rowOpts = computeRowOpts.value;
|
|
6979
|
-
const columnOpts = computeColumnOpts.value;
|
|
6980
|
-
const vSize = computeSize.value;
|
|
6981
|
-
const tableBorder = computeTableBorder.value;
|
|
6982
|
-
const mouseOpts = computeMouseOpts.value;
|
|
6983
|
-
const validTipOpts = computeValidTipOpts.value;
|
|
6984
|
-
const loadingOpts = computeLoadingOpts.value;
|
|
6985
|
-
const isMenu = computeIsMenu.value;
|
|
6986
|
-
const currLoading = reactData._isLoading || loading;
|
|
6987
|
-
return h('div', {
|
|
6988
|
-
ref: refElem,
|
|
6989
|
-
class: ['vxe-table', 'vxe-table--render-default', `tid_${xID}`, `border--${tableBorder}`, {
|
|
6990
|
-
[`size--${vSize}`]: vSize,
|
|
6991
|
-
[`valid-msg--${validOpts.msgMode}`]: !!editRules,
|
|
6992
|
-
'vxe-editable': !!editConfig,
|
|
6993
|
-
'old-cell-valid': editRules && getConfig().cellVaildMode === 'obsolete',
|
|
6994
|
-
'cell--highlight': highlightCell,
|
|
6995
|
-
'cell--selected': mouseConfig && mouseOpts.selected,
|
|
6996
|
-
'cell--area': mouseConfig && mouseOpts.area,
|
|
6997
|
-
'row--highlight': rowOpts.isHover || highlightHoverRow,
|
|
6998
|
-
'column--highlight': columnOpts.isHover || highlightHoverColumn,
|
|
6999
|
-
'checkbox--range': checkboxOpts.range,
|
|
7000
|
-
'column--calc': isCalcColumn,
|
|
7001
|
-
'is--header': showHeader,
|
|
7002
|
-
'is--footer': showFooter,
|
|
7003
|
-
'is--group': isGroup,
|
|
7004
|
-
'is--tree-line': treeConfig && (treeOpts.showLine || treeOpts.line),
|
|
7005
|
-
'is--fixed-left': leftList.length,
|
|
7006
|
-
'is--fixed-right': rightList.length,
|
|
7007
|
-
'is--animat': !!props.animat,
|
|
7008
|
-
'is--padding': props.padding,
|
|
7009
|
-
'is--round': props.round,
|
|
7010
|
-
'is--stripe': !treeConfig && stripe,
|
|
7011
|
-
'is--loading': currLoading,
|
|
7012
|
-
'is--empty': !currLoading && !tableData.length,
|
|
7013
|
-
'is--scroll-y': overflowY,
|
|
7014
|
-
'is--scroll-x': overflowX,
|
|
7015
|
-
'is--virtual-x': scrollXLoad,
|
|
7016
|
-
'is--virtual-y': scrollYLoad
|
|
7017
|
-
}],
|
|
7018
|
-
spellcheck: false,
|
|
7019
|
-
onKeydown: keydownEvent
|
|
7020
|
-
}, [
|
|
7021
|
-
/**
|
|
7022
|
-
* 隐藏列
|
|
7023
|
-
*/
|
|
7024
|
-
h('div', {
|
|
7025
|
-
class: 'vxe-table-slots'
|
|
7026
|
-
}, slots.default ? slots.default({}) : []),
|
|
7027
|
-
h('div', {
|
|
7028
|
-
class: 'vxe-table--render-wrapper'
|
|
7029
|
-
}, [
|
|
7030
|
-
h('div', {
|
|
7031
|
-
class: 'vxe-table--main-wrapper'
|
|
7032
|
-
}, [
|
|
7033
|
-
/**
|
|
7034
|
-
* 表头
|
|
7035
|
-
*/
|
|
7036
|
-
showHeader
|
|
7037
|
-
? h(TableHeaderComponent, {
|
|
7038
|
-
ref: refTableHeader,
|
|
7039
|
-
tableData,
|
|
7040
|
-
tableColumn,
|
|
7041
|
-
tableGroupColumn
|
|
7042
|
-
})
|
|
7043
|
-
: createCommentVNode(),
|
|
7044
|
-
/**
|
|
7045
|
-
* 表体
|
|
7046
|
-
*/
|
|
7047
|
-
h(TableBodyComponent, {
|
|
7048
|
-
ref: refTableBody,
|
|
7049
|
-
tableData,
|
|
7050
|
-
tableColumn
|
|
7051
|
-
}),
|
|
7052
|
-
/**
|
|
7053
|
-
* 表尾
|
|
7054
|
-
*/
|
|
7055
|
-
showFooter
|
|
7056
|
-
? h(TableFooterComponent, {
|
|
7057
|
-
ref: refTableFooter,
|
|
7058
|
-
footerTableData,
|
|
7059
|
-
tableColumn
|
|
7060
|
-
})
|
|
7061
|
-
: createCommentVNode()
|
|
7062
|
-
]),
|
|
7063
|
-
h('div', {
|
|
7064
|
-
class: 'vxe-table--fixed-wrapper'
|
|
7065
|
-
}, [
|
|
7066
|
-
/**
|
|
7067
|
-
* 左侧固定区域
|
|
7068
|
-
*/
|
|
7069
|
-
leftList && leftList.length && overflowX ? renderFixed('left') : createCommentVNode(),
|
|
7070
|
-
/**
|
|
7071
|
-
* 右侧固定区域
|
|
7072
|
-
*/
|
|
7073
|
-
rightList && rightList.length && overflowX ? renderFixed('right') : createCommentVNode()
|
|
7074
|
-
])
|
|
7075
|
-
]),
|
|
7076
|
-
/**
|
|
7077
|
-
* 空数据
|
|
7078
|
-
*/
|
|
7079
|
-
h('div', {
|
|
7080
|
-
ref: refEmptyPlaceholder,
|
|
7081
|
-
class: 'vxe-table--empty-placeholder'
|
|
7082
|
-
}, [
|
|
7083
|
-
h('div', {
|
|
7084
|
-
class: 'vxe-table--empty-content'
|
|
7085
|
-
}, renderEmptyContenet())
|
|
7086
|
-
]),
|
|
7087
|
-
/**
|
|
7088
|
-
* 边框线
|
|
7089
|
-
*/
|
|
7090
|
-
h('div', {
|
|
7091
|
-
class: 'vxe-table--border-line'
|
|
7092
|
-
}),
|
|
7093
|
-
/**
|
|
7094
|
-
* 列宽线
|
|
7095
|
-
*/
|
|
7096
|
-
h('div', {
|
|
7097
|
-
ref: refCellResizeBar,
|
|
7098
|
-
class: 'vxe-table--resizable-bar',
|
|
7099
|
-
style: overflowX
|
|
7100
|
-
? {
|
|
7101
|
-
'padding-bottom': `${scrollbarHeight}px`
|
|
7102
|
-
}
|
|
7103
|
-
: null
|
|
7104
|
-
}),
|
|
7105
|
-
/**
|
|
7106
|
-
* 加载中
|
|
7107
|
-
*/
|
|
7108
|
-
VxeUILoadingComponent
|
|
7109
|
-
? h(VxeUILoadingComponent, {
|
|
7110
|
-
class: 'vxe-table--loading',
|
|
7111
|
-
modelValue: currLoading,
|
|
7112
|
-
icon: loadingOpts.icon,
|
|
7113
|
-
text: loadingOpts.text
|
|
7114
|
-
}, loadingSlot
|
|
7115
|
-
? {
|
|
7116
|
-
default: () => loadingSlot({ $table: $xeTable, $grid: $xeGrid })
|
|
7117
|
-
}
|
|
7118
|
-
: {})
|
|
7119
|
-
: createCommentVNode(),
|
|
7120
|
-
/**
|
|
7121
|
-
* 自定义列
|
|
7122
|
-
*/
|
|
7123
|
-
initStore.custom
|
|
7124
|
-
? h(TableCustomPanelComponent, {
|
|
7125
|
-
ref: refTableCustom,
|
|
7126
|
-
customStore
|
|
7127
|
-
})
|
|
7128
|
-
: createCommentVNode(),
|
|
7129
|
-
/**
|
|
7130
|
-
* 筛选
|
|
7131
|
-
*/
|
|
7132
|
-
initStore.filter
|
|
7133
|
-
? h(TableFilterPanelComponent, {
|
|
7134
|
-
ref: refTableFilter,
|
|
7135
|
-
filterStore
|
|
7136
|
-
})
|
|
7137
|
-
: createCommentVNode(),
|
|
7138
|
-
/**
|
|
7139
|
-
* 导入
|
|
7140
|
-
*/
|
|
7141
|
-
initStore.import && props.importConfig
|
|
7142
|
-
? h(TableImportPanelComponent, {
|
|
7143
|
-
defaultOptions: reactData.importParams,
|
|
7144
|
-
storeData: reactData.importStore
|
|
7145
|
-
})
|
|
7146
|
-
: createCommentVNode(),
|
|
7147
|
-
/**
|
|
7148
|
-
* 导出
|
|
7149
|
-
*/
|
|
7150
|
-
initStore.export && (props.exportConfig || props.printConfig)
|
|
7151
|
-
? h(TableExportPanelComponent, {
|
|
7152
|
-
defaultOptions: reactData.exportParams,
|
|
7153
|
-
storeData: reactData.exportStore
|
|
7154
|
-
})
|
|
7155
|
-
: createCommentVNode(),
|
|
7156
|
-
/**
|
|
7157
|
-
* 快捷菜单
|
|
7158
|
-
*/
|
|
7159
|
-
isMenu
|
|
7160
|
-
? h(TableMenuPanelComponent, {
|
|
7161
|
-
ref: refTableMenu
|
|
7162
|
-
})
|
|
7163
|
-
: createCommentVNode(),
|
|
7164
|
-
/**
|
|
7165
|
-
* 提示相关
|
|
7166
|
-
*/
|
|
7167
|
-
VxeUITooltipComponent
|
|
7168
|
-
? h('div', {}, [
|
|
7169
|
-
/**
|
|
7170
|
-
* 通用提示
|
|
7171
|
-
*/
|
|
7172
|
-
h(VxeUITooltipComponent, {
|
|
7173
|
-
ref: refCommTooltip,
|
|
7174
|
-
isArrow: false,
|
|
7175
|
-
enterable: false
|
|
7176
|
-
}),
|
|
7177
|
-
/**
|
|
7178
|
-
* 工具提示
|
|
7179
|
-
*/
|
|
7180
|
-
h(VxeUITooltipComponent, Object.assign({
|
|
7181
|
-
ref: refTooltip
|
|
7182
|
-
}, tipConfig, tooltipStore.currOpts)),
|
|
7183
|
-
/**
|
|
7184
|
-
* 校验提示
|
|
7185
|
-
*/
|
|
7186
|
-
props.editRules && validOpts.showMessage && (validOpts.message === 'default' ? !height : validOpts.message === 'tooltip')
|
|
7187
|
-
? h(VxeUITooltipComponent, Object.assign({ ref: refValidTooltip, class: [{
|
|
7188
|
-
'old-cell-valid': editRules && getConfig().cellVaildMode === 'obsolete'
|
|
7189
|
-
}, 'vxe-table--valid-error'] }, (validOpts.message === 'tooltip' || tableData.length === 1 ? validTipOpts : {})))
|
|
7190
|
-
: createCommentVNode()
|
|
7191
|
-
])
|
|
7192
|
-
: createCommentVNode()
|
|
7193
|
-
]);
|
|
7194
|
-
};
|
|
7195
|
-
$xeTable.renderVN = renderVN;
|
|
7196
7189
|
if (process.env.NODE_ENV === 'development') {
|
|
7197
7190
|
nextTick(() => {
|
|
7198
7191
|
if (props.loading) {
|
|
@@ -7212,6 +7205,7 @@ export default defineComponent({
|
|
|
7212
7205
|
}
|
|
7213
7206
|
provide('$xeColgroup', null);
|
|
7214
7207
|
provide('$xeTable', $xeTable);
|
|
7208
|
+
$xeTable.renderVN = renderVN;
|
|
7215
7209
|
return $xeTable;
|
|
7216
7210
|
},
|
|
7217
7211
|
render() {
|
package/es/table/style.css
CHANGED
|
@@ -1753,7 +1753,7 @@
|
|
|
1753
1753
|
resize: none;
|
|
1754
1754
|
}
|
|
1755
1755
|
|
|
1756
|
-
.vxe-body--column.col--height > .vxe-cell {
|
|
1756
|
+
.vxe-body--column.col--height.col--active > .vxe-cell {
|
|
1757
1757
|
height: 100%;
|
|
1758
1758
|
}
|
|
1759
1759
|
.vxe-body--column.col--height > .vxe-cell > .vxe-textarea, .vxe-body--column.col--height > .vxe-cell > .vxe-default-textarea {
|