vxe-table 4.7.65 → 4.7.67
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 +21 -11
- package/es/locale/lang/en-US.js +4 -1
- package/es/locale/lang/es-ES.js +4 -1
- package/es/locale/lang/hu-HU.js +4 -1
- package/es/locale/lang/ja-JP.js +4 -1
- package/es/locale/lang/ko-KR.js +4 -1
- package/es/locale/lang/pt-BR.js +4 -1
- package/es/locale/lang/ru-RU.js +4 -1
- package/es/locale/lang/vi-VN.js +4 -1
- package/es/locale/lang/zh-CN.js +4 -1
- package/es/locale/lang/zh-TC.js +4 -1
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/table/module/custom/panel.js +12 -11
- package/es/table/module/edit/hook.js +11 -10
- package/es/table/module/export/hook.js +10 -6
- package/es/table/render/index.js +95 -84
- package/es/table/src/table.js +51 -29
- package/es/table/style.css +8 -4
- package/es/table/style.min.css +1 -1
- package/es/toolbar/src/toolbar.js +7 -7
- package/es/ui/index.js +2 -2
- package/es/ui/src/log.js +1 -1
- package/es/vxe-table/style.css +8 -4
- package/es/vxe-table/style.min.css +1 -1
- package/lib/grid/src/grid.js +25 -14
- package/lib/grid/src/grid.min.js +1 -1
- package/lib/index.umd.js +236 -165
- package/lib/index.umd.min.js +1 -1
- package/lib/locale/lang/en-US.js +4 -1
- package/lib/locale/lang/en-US.min.js +1 -1
- package/lib/locale/lang/en-US.umd.js +4 -1
- package/lib/locale/lang/es-ES.js +4 -1
- package/lib/locale/lang/es-ES.min.js +1 -1
- package/lib/locale/lang/es-ES.umd.js +4 -1
- package/lib/locale/lang/hu-HU.js +4 -1
- package/lib/locale/lang/hu-HU.min.js +1 -1
- package/lib/locale/lang/ja-JP.js +4 -1
- package/lib/locale/lang/ja-JP.min.js +1 -1
- package/lib/locale/lang/ja-JP.umd.js +4 -1
- package/lib/locale/lang/ko-KR.js +4 -1
- package/lib/locale/lang/ko-KR.min.js +1 -1
- package/lib/locale/lang/pt-BR.js +4 -1
- package/lib/locale/lang/pt-BR.min.js +1 -1
- package/lib/locale/lang/pt-BR.umd.js +4 -1
- package/lib/locale/lang/ru-RU.js +4 -1
- package/lib/locale/lang/ru-RU.min.js +1 -1
- package/lib/locale/lang/vi-VN.js +4 -1
- package/lib/locale/lang/vi-VN.min.js +1 -1
- package/lib/locale/lang/zh-CN.js +4 -1
- package/lib/locale/lang/zh-CN.min.js +1 -1
- package/lib/locale/lang/zh-CN.umd.js +4 -1
- package/lib/locale/lang/zh-HK.min.js +1 -1
- package/lib/locale/lang/zh-HK.umd.js +4 -1
- package/lib/locale/lang/zh-MO.min.js +1 -1
- package/lib/locale/lang/zh-MO.umd.js +4 -1
- package/lib/locale/lang/zh-TC.js +4 -1
- package/lib/locale/lang/zh-TC.min.js +1 -1
- package/lib/locale/lang/zh-TC.umd.js +4 -1
- package/lib/locale/lang/zh-TW.min.js +1 -1
- package/lib/locale/lang/zh-TW.umd.js +4 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/table/module/custom/panel.js +18 -11
- package/lib/table/module/custom/panel.min.js +1 -1
- package/lib/table/module/edit/hook.js +11 -13
- package/lib/table/module/edit/hook.min.js +1 -1
- package/lib/table/module/export/hook.js +12 -6
- package/lib/table/module/export/hook.min.js +1 -1
- package/lib/table/render/index.js +98 -84
- package/lib/table/render/index.min.js +1 -1
- package/lib/table/src/table.js +48 -26
- package/lib/table/src/table.min.js +1 -1
- package/lib/table/style/style.css +8 -4
- package/lib/table/style/style.min.css +1 -1
- package/lib/toolbar/src/toolbar.js +17 -7
- 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 +8 -4
- package/lib/vxe-table/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/grid/src/grid.ts +22 -11
- package/packages/locale/lang/en-US.ts +4 -1
- package/packages/locale/lang/es-ES.ts +4 -1
- package/packages/locale/lang/hu-HU.ts +4 -1
- package/packages/locale/lang/ja-JP.ts +4 -1
- package/packages/locale/lang/ko-KR.ts +4 -1
- package/packages/locale/lang/pt-BR.ts +4 -1
- package/packages/locale/lang/ru-RU.ts +4 -1
- package/packages/locale/lang/vi-VN.ts +4 -1
- package/packages/locale/lang/zh-CN.ts +4 -1
- package/packages/locale/lang/zh-TC.ts +4 -1
- package/packages/table/module/custom/panel.ts +13 -12
- package/packages/table/module/edit/hook.ts +11 -10
- package/packages/table/module/export/hook.ts +10 -6
- package/packages/table/render/index.ts +95 -84
- package/packages/table/src/table.ts +52 -27
- package/packages/toolbar/src/toolbar.ts +8 -8
- package/styles/components/table.scss +6 -3
- /package/es/{iconfont.1723521776225.ttf → iconfont.1724210671876.ttf} +0 -0
- /package/es/{iconfont.1723521776225.woff → iconfont.1724210671876.woff} +0 -0
- /package/es/{iconfont.1723521776225.woff2 → iconfont.1724210671876.woff2} +0 -0
- /package/lib/{iconfont.1723521776225.ttf → iconfont.1724210671876.ttf} +0 -0
- /package/lib/{iconfont.1723521776225.woff → iconfont.1724210671876.woff} +0 -0
- /package/lib/{iconfont.1723521776225.woff2 → iconfont.1724210671876.woff2} +0 -0
package/es/table/render/index.js
CHANGED
|
@@ -364,13 +364,13 @@ function oldFilterRender(renderOpts, params) {
|
|
|
364
364
|
}
|
|
365
365
|
function handleFilterMethod({ option, row, column }) {
|
|
366
366
|
const { data } = option;
|
|
367
|
-
const cellValue = XEUtils.get(row, column.
|
|
367
|
+
const cellValue = XEUtils.get(row, column.field);
|
|
368
368
|
/* eslint-disable eqeqeq */
|
|
369
369
|
return cellValue == data;
|
|
370
370
|
}
|
|
371
371
|
function handleInputFilterMethod({ option, row, column }) {
|
|
372
372
|
const { data } = option;
|
|
373
|
-
const cellValue = XEUtils.get(row, column.
|
|
373
|
+
const cellValue = XEUtils.get(row, column.field);
|
|
374
374
|
/* eslint-disable eqeqeq */
|
|
375
375
|
return XEUtils.toValueString(cellValue).indexOf(data) > -1;
|
|
376
376
|
}
|
|
@@ -409,7 +409,7 @@ function oldSelectEditRender(renderOpts, params) {
|
|
|
409
409
|
}
|
|
410
410
|
function getSelectCellValue(renderOpts, { row, column }) {
|
|
411
411
|
const { options, optionGroups, optionProps = {}, optionGroupProps = {} } = renderOpts;
|
|
412
|
-
const cellValue = XEUtils.get(row, column.
|
|
412
|
+
const cellValue = XEUtils.get(row, column.field);
|
|
413
413
|
let selectItem;
|
|
414
414
|
const labelProp = optionProps.label || 'label';
|
|
415
415
|
const valueProp = optionProps.value || 'value';
|
|
@@ -440,7 +440,7 @@ function handleExportSelectMethod(params) {
|
|
|
440
440
|
}
|
|
441
441
|
function getTreeSelectCellValue(renderOpts, { row, column }) {
|
|
442
442
|
const { options, optionProps = {} } = renderOpts;
|
|
443
|
-
const cellValue = XEUtils.get(row, column.
|
|
443
|
+
const cellValue = XEUtils.get(row, column.field);
|
|
444
444
|
const labelProp = optionProps.label || 'label';
|
|
445
445
|
const valueProp = optionProps.value || 'value';
|
|
446
446
|
const childrenProp = optionProps.children || 'children';
|
|
@@ -465,40 +465,40 @@ function handleExportTreeSelectMethod(params) {
|
|
|
465
465
|
*/
|
|
466
466
|
renderer.mixin({
|
|
467
467
|
input: {
|
|
468
|
-
|
|
469
|
-
|
|
470
|
-
|
|
471
|
-
|
|
472
|
-
|
|
468
|
+
tableAutoFocus: 'input',
|
|
469
|
+
renderTableEdit: nativeEditRender,
|
|
470
|
+
renderTableDefault: nativeEditRender,
|
|
471
|
+
renderTableFilter: nativeFilterRender,
|
|
472
|
+
tableFilterDefaultMethod: handleInputFilterMethod
|
|
473
473
|
},
|
|
474
474
|
textarea: {
|
|
475
|
-
|
|
476
|
-
|
|
475
|
+
tableAutoFocus: 'textarea',
|
|
476
|
+
renderTableEdit: nativeEditRender
|
|
477
477
|
},
|
|
478
478
|
select: {
|
|
479
|
-
|
|
480
|
-
|
|
481
|
-
|
|
479
|
+
renderTableEdit: nativeSelectEditRender,
|
|
480
|
+
renderTableDefault: nativeSelectEditRender,
|
|
481
|
+
renderTableCell(renderOpts, params) {
|
|
482
482
|
return getCellLabelVNs(renderOpts, params, getSelectCellValue(renderOpts, params));
|
|
483
483
|
},
|
|
484
|
-
|
|
484
|
+
renderTableFilter(renderOpts, params) {
|
|
485
485
|
const { column } = params;
|
|
486
486
|
return column.filters.map((option, oIndex) => {
|
|
487
487
|
return h('select', Object.assign(Object.assign({ key: oIndex, class: 'vxe-default-select' }, getNativeAttrs(renderOpts)), getNativeFilterOns(renderOpts, params, option)), renderOpts.optionGroups ? renderNativeOptgroups(renderOpts, params, renderNativeOptions) : renderNativeOptions(renderOpts.options, renderOpts, params));
|
|
488
488
|
});
|
|
489
489
|
},
|
|
490
|
-
|
|
491
|
-
|
|
490
|
+
tableFilterDefaultMethod: handleFilterMethod,
|
|
491
|
+
tableExportMethod: handleExportSelectMethod
|
|
492
492
|
},
|
|
493
493
|
VxeInput: {
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
494
|
+
tableAutoFocus: 'input',
|
|
495
|
+
renderTableEdit: defaultEditRender,
|
|
496
|
+
renderTableCell(renderOpts, params) {
|
|
497
497
|
var _a;
|
|
498
498
|
const { props = {} } = renderOpts;
|
|
499
499
|
const { row, column } = params;
|
|
500
500
|
const digits = props.digits || ((_a = getConfig().input) === null || _a === void 0 ? void 0 : _a.digits) || 2;
|
|
501
|
-
let cellValue = XEUtils.get(row, column.
|
|
501
|
+
let cellValue = XEUtils.get(row, column.field);
|
|
502
502
|
if (cellValue) {
|
|
503
503
|
switch (props.type) {
|
|
504
504
|
case 'date':
|
|
@@ -515,19 +515,19 @@ renderer.mixin({
|
|
|
515
515
|
}
|
|
516
516
|
return getCellLabelVNs(renderOpts, params, cellValue);
|
|
517
517
|
},
|
|
518
|
-
|
|
519
|
-
|
|
520
|
-
|
|
518
|
+
renderTableDefault: defaultEditRender,
|
|
519
|
+
renderTableFilter: defaultFilterRender,
|
|
520
|
+
tableFilterDefaultMethod: handleInputFilterMethod
|
|
521
521
|
},
|
|
522
522
|
VxeNumberInput: {
|
|
523
|
-
|
|
524
|
-
|
|
525
|
-
|
|
523
|
+
tableAutoFocus: 'input',
|
|
524
|
+
renderTableEdit: defaultEditRender,
|
|
525
|
+
renderTableCell(renderOpts, params) {
|
|
526
526
|
var _a;
|
|
527
527
|
const { props = {} } = renderOpts;
|
|
528
528
|
const { row, column } = params;
|
|
529
529
|
const digits = props.digits || ((_a = getConfig().numberInput) === null || _a === void 0 ? void 0 : _a.digits) || 2;
|
|
530
|
-
let cellValue = XEUtils.get(row, column.
|
|
530
|
+
let cellValue = XEUtils.get(row, column.field);
|
|
531
531
|
if (cellValue) {
|
|
532
532
|
switch (props.type) {
|
|
533
533
|
case 'float':
|
|
@@ -537,17 +537,17 @@ renderer.mixin({
|
|
|
537
537
|
}
|
|
538
538
|
return getCellLabelVNs(renderOpts, params, cellValue);
|
|
539
539
|
},
|
|
540
|
-
|
|
541
|
-
|
|
542
|
-
|
|
540
|
+
renderTableDefault: defaultEditRender,
|
|
541
|
+
renderTableFilter: defaultFilterRender,
|
|
542
|
+
tableFilterDefaultMethod: handleInputFilterMethod
|
|
543
543
|
},
|
|
544
544
|
VxeDatePicker: {
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
545
|
+
tableAutoFocus: 'input',
|
|
546
|
+
renderTableEdit: defaultEditRender,
|
|
547
|
+
renderTableCell(renderOpts, params) {
|
|
548
548
|
const { props = {} } = renderOpts;
|
|
549
549
|
const { row, column } = params;
|
|
550
|
-
let cellValue = XEUtils.get(row, column.
|
|
550
|
+
let cellValue = XEUtils.get(row, column.field);
|
|
551
551
|
if (cellValue) {
|
|
552
552
|
switch (props.type) {
|
|
553
553
|
case 'date':
|
|
@@ -561,18 +561,18 @@ renderer.mixin({
|
|
|
561
561
|
}
|
|
562
562
|
return getCellLabelVNs(renderOpts, params, cellValue);
|
|
563
563
|
},
|
|
564
|
-
|
|
565
|
-
|
|
566
|
-
|
|
564
|
+
renderTableDefault: defaultEditRender,
|
|
565
|
+
renderTableFilter: defaultFilterRender,
|
|
566
|
+
tableFilterDefaultMethod: handleFilterMethod
|
|
567
567
|
},
|
|
568
568
|
VxeTextarea: {
|
|
569
|
-
|
|
569
|
+
tableAutoFocus: 'VxeTextarea'
|
|
570
570
|
},
|
|
571
571
|
VxeButton: {
|
|
572
|
-
|
|
572
|
+
renderTableDefault: buttonCellRender
|
|
573
573
|
},
|
|
574
574
|
VxeButtonGroup: {
|
|
575
|
-
|
|
575
|
+
renderTableDefault(renderOpts, params) {
|
|
576
576
|
const { options } = renderOpts;
|
|
577
577
|
return [
|
|
578
578
|
h(getDefaultComponent(renderOpts), Object.assign(Object.assign({ options }, getCellEditProps(renderOpts, params, null)), getComponentOns(renderOpts, params)))
|
|
@@ -580,13 +580,13 @@ renderer.mixin({
|
|
|
580
580
|
}
|
|
581
581
|
},
|
|
582
582
|
VxeSelect: {
|
|
583
|
-
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
|
|
583
|
+
tableAutoFocus: 'input',
|
|
584
|
+
renderTableEdit: defaultSelectEditRender,
|
|
585
|
+
renderTableDefault: defaultSelectEditRender,
|
|
586
|
+
renderTableCell(renderOpts, params) {
|
|
587
587
|
return getCellLabelVNs(renderOpts, params, getSelectCellValue(renderOpts, params));
|
|
588
588
|
},
|
|
589
|
-
|
|
589
|
+
renderTableFilter(renderOpts, params) {
|
|
590
590
|
const { column } = params;
|
|
591
591
|
const { options, optionProps, optionGroups, optionGroupProps } = renderOpts;
|
|
592
592
|
return column.filters.map((option, oIndex) => {
|
|
@@ -594,35 +594,46 @@ renderer.mixin({
|
|
|
594
594
|
return h(getDefaultComponent(renderOpts), Object.assign(Object.assign({ key: oIndex }, getCellEditFilterProps(renderOpts, params, optionValue, { options, optionProps, optionGroups, optionGroupProps })), getFilterOns(renderOpts, params, option)));
|
|
595
595
|
});
|
|
596
596
|
},
|
|
597
|
-
|
|
598
|
-
|
|
597
|
+
tableFilterDefaultMethod: handleFilterMethod,
|
|
598
|
+
tableExportMethod: handleExportSelectMethod
|
|
599
599
|
},
|
|
600
600
|
VxeTreeSelect: {
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
|
|
601
|
+
tableAutoFocus: 'input',
|
|
602
|
+
renderTableEdit: defaultTreeSelectEditRender,
|
|
603
|
+
renderTableCell(renderOpts, params) {
|
|
604
604
|
return getCellLabelVNs(renderOpts, params, getTreeSelectCellValue(renderOpts, params));
|
|
605
605
|
},
|
|
606
|
-
|
|
606
|
+
tableExportMethod: handleExportTreeSelectMethod
|
|
607
|
+
},
|
|
608
|
+
VxeIconPicker: {
|
|
609
|
+
tableAutoFocus: 'input',
|
|
610
|
+
renderTableEdit: defaultEditRender,
|
|
611
|
+
renderTableCell(renderOpts, params) {
|
|
612
|
+
const { row, column } = params;
|
|
613
|
+
const cellValue = XEUtils.get(row, column.field);
|
|
614
|
+
return h('i', {
|
|
615
|
+
class: cellValue
|
|
616
|
+
});
|
|
617
|
+
}
|
|
607
618
|
},
|
|
608
619
|
VxeRadioGroup: {
|
|
609
|
-
|
|
620
|
+
renderTableDefault: radioAndCheckboxEditRender
|
|
610
621
|
},
|
|
611
622
|
VxeCheckboxGroup: {
|
|
612
|
-
|
|
623
|
+
renderTableDefault: radioAndCheckboxEditRender
|
|
613
624
|
},
|
|
614
625
|
VxeSwitch: {
|
|
615
|
-
|
|
616
|
-
|
|
617
|
-
|
|
626
|
+
tableAutoFocus: 'button',
|
|
627
|
+
renderTableEdit: defaultEditRender,
|
|
628
|
+
renderTableDefault: defaultEditRender
|
|
618
629
|
},
|
|
619
630
|
VxeUpload: {
|
|
620
|
-
|
|
621
|
-
|
|
622
|
-
|
|
631
|
+
renderTableEdit: defaultEditRender,
|
|
632
|
+
renderTableCell: defaultEditRender,
|
|
633
|
+
renderTableDefault: defaultEditRender
|
|
623
634
|
},
|
|
624
635
|
VxeImage: {
|
|
625
|
-
|
|
636
|
+
renderTableDefault(renderOpts, params) {
|
|
626
637
|
const { row, column } = params;
|
|
627
638
|
const { props } = renderOpts;
|
|
628
639
|
const cellValue = getCellValue(row, column);
|
|
@@ -632,7 +643,7 @@ renderer.mixin({
|
|
|
632
643
|
}
|
|
633
644
|
},
|
|
634
645
|
VxeImageGroup: {
|
|
635
|
-
|
|
646
|
+
renderTableDefault(renderOpts, params) {
|
|
636
647
|
const { row, column } = params;
|
|
637
648
|
const { props } = renderOpts;
|
|
638
649
|
const cellValue = getCellValue(row, column);
|
|
@@ -643,14 +654,14 @@ renderer.mixin({
|
|
|
643
654
|
},
|
|
644
655
|
// 以下已废弃
|
|
645
656
|
$input: {
|
|
646
|
-
|
|
647
|
-
|
|
648
|
-
|
|
657
|
+
tableAutoFocus: '.vxe-input--inner',
|
|
658
|
+
renderTableEdit: oldEditRender,
|
|
659
|
+
renderTableCell(renderOpts, params) {
|
|
649
660
|
var _a;
|
|
650
661
|
const { props = {} } = renderOpts;
|
|
651
662
|
const { row, column } = params;
|
|
652
663
|
const digits = props.digits || ((_a = getConfig().input) === null || _a === void 0 ? void 0 : _a.digits) || 2;
|
|
653
|
-
let cellValue = XEUtils.get(row, column.
|
|
664
|
+
let cellValue = XEUtils.get(row, column.field);
|
|
654
665
|
if (cellValue) {
|
|
655
666
|
switch (props.type) {
|
|
656
667
|
case 'date':
|
|
@@ -666,27 +677,27 @@ renderer.mixin({
|
|
|
666
677
|
}
|
|
667
678
|
return getCellLabelVNs(renderOpts, params, cellValue);
|
|
668
679
|
},
|
|
669
|
-
|
|
670
|
-
|
|
671
|
-
|
|
680
|
+
renderTableDefault: oldEditRender,
|
|
681
|
+
renderTableFilter: oldFilterRender,
|
|
682
|
+
tableFilterDefaultMethod: handleInputFilterMethod
|
|
672
683
|
},
|
|
673
684
|
$textarea: {
|
|
674
|
-
|
|
685
|
+
tableAutoFocus: '.vxe-textarea--inner'
|
|
675
686
|
},
|
|
676
687
|
$button: {
|
|
677
|
-
|
|
688
|
+
renderTableDefault: oldButtonEditRender
|
|
678
689
|
},
|
|
679
690
|
$buttons: {
|
|
680
|
-
|
|
691
|
+
renderTableDefault: oldButtonsEditRender
|
|
681
692
|
},
|
|
682
693
|
$select: {
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
686
|
-
|
|
694
|
+
tableAutoFocus: '.vxe-input--inner',
|
|
695
|
+
renderTableEdit: oldSelectEditRender,
|
|
696
|
+
renderTableDefault: oldSelectEditRender,
|
|
697
|
+
renderTableCell(renderOpts, params) {
|
|
687
698
|
return getCellLabelVNs(renderOpts, params, getSelectCellValue(renderOpts, params));
|
|
688
699
|
},
|
|
689
|
-
|
|
700
|
+
renderTableFilter(renderOpts, params) {
|
|
690
701
|
const { column } = params;
|
|
691
702
|
const { options, optionProps, optionGroups, optionGroupProps } = renderOpts;
|
|
692
703
|
return column.filters.map((option, oIndex) => {
|
|
@@ -694,19 +705,19 @@ renderer.mixin({
|
|
|
694
705
|
return h(getOldComponent(renderOpts), Object.assign(Object.assign({ key: oIndex }, getCellEditFilterProps(renderOpts, params, optionValue, { options, optionProps, optionGroups, optionGroupProps })), getFilterOns(renderOpts, params, option)));
|
|
695
706
|
});
|
|
696
707
|
},
|
|
697
|
-
|
|
698
|
-
|
|
708
|
+
tableFilterDefaultMethod: handleFilterMethod,
|
|
709
|
+
tableExportMethod: handleExportSelectMethod
|
|
699
710
|
},
|
|
700
711
|
$radio: {
|
|
701
|
-
|
|
712
|
+
tableAutoFocus: '.vxe-radio--input'
|
|
702
713
|
},
|
|
703
714
|
$checkbox: {
|
|
704
|
-
|
|
715
|
+
tableAutoFocus: '.vxe-checkbox--input'
|
|
705
716
|
},
|
|
706
717
|
$switch: {
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
718
|
+
tableAutoFocus: '.vxe-switch--button',
|
|
719
|
+
renderTableEdit: oldEditRender,
|
|
720
|
+
renderTableDefault: oldEditRender
|
|
710
721
|
}
|
|
711
722
|
// 以上已废弃
|
|
712
723
|
});
|
package/es/table/src/table.js
CHANGED
|
@@ -30,6 +30,7 @@ export default defineComponent({
|
|
|
30
30
|
// 使用已安装的组件,如果未安装则不渲染
|
|
31
31
|
const VxeUILoadingComponent = VxeUI.getComponent('VxeLoading');
|
|
32
32
|
const VxeUITooltipComponent = VxeUI.getComponent('VxeTooltip');
|
|
33
|
+
const $xeTabs = inject('$xeTabs', null);
|
|
33
34
|
const { computeSize } = useFns.useSize(props);
|
|
34
35
|
const reactData = reactive({
|
|
35
36
|
isCalcColumn: false,
|
|
@@ -3188,6 +3189,11 @@ export default defineComponent({
|
|
|
3188
3189
|
const fullColumnFieldData = internalData.fullColumnFieldData;
|
|
3189
3190
|
return field && fullColumnFieldData[field] ? fullColumnFieldData[field].column : null;
|
|
3190
3191
|
},
|
|
3192
|
+
getParentColumn(fieldOrColumn) {
|
|
3193
|
+
const fullColumnIdData = internalData.fullColumnIdData;
|
|
3194
|
+
const column = handleFieldOrColumn($xeTable, fieldOrColumn);
|
|
3195
|
+
return column && column.parentId && fullColumnIdData[column.parentId] ? fullColumnIdData[column.parentId].column : null;
|
|
3196
|
+
},
|
|
3191
3197
|
/**
|
|
3192
3198
|
* 获取当前表格的列
|
|
3193
3199
|
* 收集到的全量列、全量表头列、处理条件之后的全量表头列、当前渲染中的表头列
|
|
@@ -3470,10 +3476,14 @@ export default defineComponent({
|
|
|
3470
3476
|
* 计算单元格列宽,动态分配可用剩余空间
|
|
3471
3477
|
* 支持 width=? width=?px width=?% min-width=? min-width=?px min-width=?%
|
|
3472
3478
|
*/
|
|
3473
|
-
recalculate(
|
|
3479
|
+
recalculate(reFull) {
|
|
3480
|
+
const el = refElem.value;
|
|
3481
|
+
if (!el || !el.clientWidth) {
|
|
3482
|
+
return nextTick();
|
|
3483
|
+
}
|
|
3474
3484
|
calcCellWidth();
|
|
3475
3485
|
autoCellWidth();
|
|
3476
|
-
if (
|
|
3486
|
+
if (reFull === true) {
|
|
3477
3487
|
// 初始化时需要在列计算之后再执行优化运算,达到最优显示效果
|
|
3478
3488
|
return computeScrollLoad().then(() => {
|
|
3479
3489
|
autoCellWidth();
|
|
@@ -4907,6 +4917,7 @@ export default defineComponent({
|
|
|
4907
4917
|
const operArrow = isLeftArrow || isUpArrow || isRightArrow || isDwArrow;
|
|
4908
4918
|
const operCtxMenu = isMenu && ctxMenuStore.visible && (isEnter || isSpacebar || operArrow);
|
|
4909
4919
|
const isEditStatus = isEnableConf(editConfig) && actived.column && actived.row;
|
|
4920
|
+
const beforeEditMethod = editOpts.beforeEditMethod || editOpts.activeMethod;
|
|
4910
4921
|
let params;
|
|
4911
4922
|
if (operCtxMenu) {
|
|
4912
4923
|
// 如果配置了右键菜单; 支持方向键操作、回车
|
|
@@ -5051,20 +5062,23 @@ export default defineComponent({
|
|
|
5051
5062
|
columnIndex: tableMethods.getColumnIndex(selected.column),
|
|
5052
5063
|
$table: $xeTable
|
|
5053
5064
|
};
|
|
5054
|
-
|
|
5055
|
-
|
|
5056
|
-
|
|
5057
|
-
|
|
5058
|
-
|
|
5065
|
+
// 是否被禁用
|
|
5066
|
+
if (!beforeEditMethod || beforeEditMethod(params)) {
|
|
5067
|
+
if (delMethod) {
|
|
5068
|
+
delMethod(delPaqrams);
|
|
5069
|
+
}
|
|
5070
|
+
else {
|
|
5071
|
+
setCellValue(selected.row, selected.column, null);
|
|
5072
|
+
}
|
|
5073
|
+
// 如果按下 del 键,更新表尾数据
|
|
5074
|
+
tableMethods.updateFooter();
|
|
5075
|
+
$xeTable.dispatchEvent('cell-delete-value', delPaqrams, evnt);
|
|
5059
5076
|
}
|
|
5060
|
-
// 如果按下 del 键,更新表尾数据
|
|
5061
|
-
tableMethods.updateFooter();
|
|
5062
|
-
$xeTable.dispatchEvent('cell-delete-value', delPaqrams, evnt);
|
|
5063
5077
|
}
|
|
5064
5078
|
}
|
|
5065
5079
|
else if (hasBackspaceKey && keyboardConfig && keyboardOpts.isBack && isEnableConf(editConfig) && (selected.row || selected.column)) {
|
|
5066
5080
|
if (!isEditStatus) {
|
|
5067
|
-
const {
|
|
5081
|
+
const { backMethod } = keyboardOpts;
|
|
5068
5082
|
// 如果是删除键
|
|
5069
5083
|
if (keyboardOpts.isDel && isEnableConf(editConfig) && (selected.row || selected.column)) {
|
|
5070
5084
|
const delPaqrams = {
|
|
@@ -5074,25 +5088,23 @@ export default defineComponent({
|
|
|
5074
5088
|
columnIndex: tableMethods.getColumnIndex(selected.column),
|
|
5075
5089
|
$table: $xeTable
|
|
5076
5090
|
};
|
|
5077
|
-
|
|
5078
|
-
|
|
5079
|
-
|
|
5080
|
-
|
|
5081
|
-
|
|
5082
|
-
|
|
5083
|
-
|
|
5084
|
-
|
|
5085
|
-
|
|
5086
|
-
|
|
5087
|
-
|
|
5088
|
-
|
|
5089
|
-
|
|
5090
|
-
|
|
5091
|
-
|
|
5092
|
-
|
|
5093
|
-
$xeTable.handleActived(selected.args, evnt);
|
|
5091
|
+
// 是否被禁用
|
|
5092
|
+
if (!beforeEditMethod || beforeEditMethod(params)) {
|
|
5093
|
+
if (backMethod) {
|
|
5094
|
+
backMethod({
|
|
5095
|
+
row: selected.row,
|
|
5096
|
+
rowIndex: tableMethods.getRowIndex(selected.row),
|
|
5097
|
+
column: selected.column,
|
|
5098
|
+
columnIndex: tableMethods.getColumnIndex(selected.column),
|
|
5099
|
+
$table: $xeTable
|
|
5100
|
+
});
|
|
5101
|
+
}
|
|
5102
|
+
else {
|
|
5103
|
+
setCellValue(selected.row, selected.column, null);
|
|
5104
|
+
$xeTable.handleActived(selected.args, evnt);
|
|
5105
|
+
}
|
|
5106
|
+
$xeTable.dispatchEvent('cell-backspace-value', delPaqrams, evnt);
|
|
5094
5107
|
}
|
|
5095
|
-
$xeTable.dispatchEvent('cell-backspace-value', delPaqrams, evnt);
|
|
5096
5108
|
}
|
|
5097
5109
|
}
|
|
5098
5110
|
}
|
|
@@ -5208,6 +5220,10 @@ export default defineComponent({
|
|
|
5208
5220
|
if ($xeTable.closeMenu) {
|
|
5209
5221
|
$xeTable.closeMenu();
|
|
5210
5222
|
}
|
|
5223
|
+
const el = refElem.value;
|
|
5224
|
+
if (!el || !el.clientWidth) {
|
|
5225
|
+
return nextTick();
|
|
5226
|
+
}
|
|
5211
5227
|
tableMethods.updateCellAreas();
|
|
5212
5228
|
tableMethods.recalculate(true);
|
|
5213
5229
|
};
|
|
@@ -6657,6 +6673,11 @@ export default defineComponent({
|
|
|
6657
6673
|
}
|
|
6658
6674
|
});
|
|
6659
6675
|
});
|
|
6676
|
+
if ($xeTabs) {
|
|
6677
|
+
watch(() => $xeTabs ? $xeTabs.reactData.resizeFlag : null, () => {
|
|
6678
|
+
handleGlobalResizeEvent();
|
|
6679
|
+
});
|
|
6680
|
+
}
|
|
6660
6681
|
hooks.forEach((options) => {
|
|
6661
6682
|
const { setupTable } = options;
|
|
6662
6683
|
if (setupTable) {
|
|
@@ -6928,6 +6949,7 @@ export default defineComponent({
|
|
|
6928
6949
|
'is--virtual-x': scrollXLoad,
|
|
6929
6950
|
'is--virtual-y': scrollYLoad
|
|
6930
6951
|
}],
|
|
6952
|
+
spellcheck: false,
|
|
6931
6953
|
onKeydown: keydownEvent
|
|
6932
6954
|
}, [
|
|
6933
6955
|
/**
|
package/es/table/style.css
CHANGED
|
@@ -1734,13 +1734,14 @@
|
|
|
1734
1734
|
resize: none;
|
|
1735
1735
|
vertical-align: middle;
|
|
1736
1736
|
}
|
|
1737
|
-
.vxe-cell > .vxe-input, .vxe-cell > .vxe-textarea, .vxe-cell > .vxe-select, .vxe-cell > .vxe-tree-select, .vxe-cell > .vxe-date-picker, .vxe-cell > .vxe-number-input,
|
|
1737
|
+
.vxe-cell > .vxe-input, .vxe-cell > .vxe-textarea, .vxe-cell > .vxe-select, .vxe-cell > .vxe-tree-select, .vxe-cell > .vxe-date-picker, .vxe-cell > .vxe-number-input, .vxe-cell > .vxe-ico-picker,
|
|
1738
1738
|
.vxe-table--filter-template > .vxe-input,
|
|
1739
1739
|
.vxe-table--filter-template > .vxe-textarea,
|
|
1740
1740
|
.vxe-table--filter-template > .vxe-select,
|
|
1741
1741
|
.vxe-table--filter-template > .vxe-tree-select,
|
|
1742
1742
|
.vxe-table--filter-template > .vxe-date-picker,
|
|
1743
|
-
.vxe-table--filter-template > .vxe-number-input
|
|
1743
|
+
.vxe-table--filter-template > .vxe-number-input,
|
|
1744
|
+
.vxe-table--filter-template > .vxe-ico-picker {
|
|
1744
1745
|
width: 100%;
|
|
1745
1746
|
}
|
|
1746
1747
|
.vxe-cell > .vxe-input > .vxe-input--inner, .vxe-cell > .vxe-textarea > .vxe-textarea--inner,
|
|
@@ -1759,12 +1760,14 @@
|
|
|
1759
1760
|
.vxe-cell > .vxe-cell--tree-node .vxe-tree-select,
|
|
1760
1761
|
.vxe-cell > .vxe-cell--tree-node .vxe-date-picker,
|
|
1761
1762
|
.vxe-cell > .vxe-cell--tree-node .vxe-number-input,
|
|
1763
|
+
.vxe-cell > .vxe-cell--tree-node .vxe-ico-picker,
|
|
1762
1764
|
.vxe-table--filter-template > .vxe-cell--tree-node .vxe-input,
|
|
1763
1765
|
.vxe-table--filter-template > .vxe-cell--tree-node .vxe-textarea,
|
|
1764
1766
|
.vxe-table--filter-template > .vxe-cell--tree-node .vxe-select,
|
|
1765
1767
|
.vxe-table--filter-template > .vxe-cell--tree-node .vxe-tree-select,
|
|
1766
1768
|
.vxe-table--filter-template > .vxe-cell--tree-node .vxe-date-picker,
|
|
1767
|
-
.vxe-table--filter-template > .vxe-cell--tree-node .vxe-number-input
|
|
1769
|
+
.vxe-table--filter-template > .vxe-cell--tree-node .vxe-number-input,
|
|
1770
|
+
.vxe-table--filter-template > .vxe-cell--tree-node .vxe-ico-picker {
|
|
1768
1771
|
width: 100%;
|
|
1769
1772
|
}
|
|
1770
1773
|
.vxe-cell > .vxe-cell--tree-node .vxe-input > .vxe-input--inner,
|
|
@@ -2660,7 +2663,8 @@
|
|
|
2660
2663
|
.vxe-table--render-default .vxe-body--column.col--valid-error .vxe-default-select {
|
|
2661
2664
|
border-color: var(--vxe-ui-table-validate-error-color);
|
|
2662
2665
|
}
|
|
2663
|
-
.vxe-table--render-default .vxe-body--column.col--valid-error .vxe-input
|
|
2666
|
+
.vxe-table--render-default .vxe-body--column.col--valid-error .vxe-input,
|
|
2667
|
+
.vxe-table--render-default .vxe-body--column.col--valid-error .vxe-ico-picker {
|
|
2664
2668
|
border-color: var(--vxe-ui-table-validate-error-color);
|
|
2665
2669
|
}
|
|
2666
2670
|
.vxe-table--render-default.valid-msg--single .vxe-body--row:last-child .vxe-cell--valid-error-hint {
|