vxe-pc-ui 3.20.0 → 3.20.2
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/card/src/card.js +20 -4
- package/es/drawer/src/drawer.js +75 -16
- package/es/drawer/style.css +13 -6
- package/es/drawer/style.min.css +1 -1
- package/es/icon/style.css +1 -1
- package/es/language/fr-FR.js +29 -29
- package/es/layout-aside/src/layout-aside.js +10 -6
- package/es/layout-body/src/layout-body.js +24 -12
- package/es/list/src/list.js +131 -49
- package/es/list/style.css +25 -8
- package/es/list/style.min.css +1 -1
- package/es/menu/src/menu.js +2 -2
- package/es/modal/src/modal.js +73 -14
- package/es/modal/style.css +4 -0
- package/es/modal/style.min.css +1 -1
- package/es/scrollbar/src/scrollbar.js +87 -19
- package/es/style.css +1 -1
- package/es/style.min.css +1 -1
- package/es/tabs/src/tabs.js +21 -5
- package/es/tree/src/tree.js +460 -54
- package/es/tree/style.css +43 -0
- package/es/tree/style.min.css +1 -1
- package/es/ui/index.js +1 -1
- package/es/ui/src/log.js +1 -1
- package/es/ui/src/utils.js +3 -0
- package/es/vxe-drawer/style.css +13 -6
- package/es/vxe-drawer/style.min.css +1 -1
- package/es/vxe-list/style.css +25 -8
- package/es/vxe-list/style.min.css +1 -1
- package/es/vxe-modal/style.css +4 -0
- package/es/vxe-modal/style.min.css +1 -1
- package/es/vxe-tree/style.css +43 -0
- package/es/vxe-tree/style.min.css +1 -1
- package/lib/card/src/card.js +20 -4
- package/lib/card/src/card.min.js +1 -1
- package/lib/drawer/src/drawer.js +76 -12
- package/lib/drawer/src/drawer.min.js +1 -1
- package/lib/drawer/style/style.css +13 -6
- package/lib/drawer/style/style.min.css +1 -1
- package/lib/icon/style/style.css +1 -1
- package/lib/icon/style/style.min.css +1 -1
- package/lib/index.umd.js +956 -185
- package/lib/index.umd.min.js +1 -1
- package/lib/language/fr-FR.js +29 -29
- package/lib/language/fr-FR.min.js +1 -1
- package/lib/language/fr-FR.umd.js +29 -29
- package/lib/layout-aside/src/layout-aside.js +10 -9
- package/lib/layout-aside/src/layout-aside.min.js +1 -1
- package/lib/layout-body/src/layout-body.js +28 -20
- package/lib/layout-body/src/layout-body.min.js +1 -1
- package/lib/list/src/list.js +119 -46
- package/lib/list/src/list.min.js +1 -1
- package/lib/list/style/style.css +25 -8
- package/lib/list/style/style.min.css +1 -1
- package/lib/menu/src/menu.js +1 -1
- package/lib/menu/src/menu.min.js +1 -1
- package/lib/modal/src/modal.js +74 -12
- package/lib/modal/src/modal.min.js +1 -1
- package/lib/modal/style/style.css +4 -0
- package/lib/modal/style/style.min.css +1 -1
- package/lib/scrollbar/src/scrollbar.js +92 -17
- package/lib/scrollbar/src/scrollbar.min.js +1 -1
- package/lib/style.css +1 -1
- package/lib/style.min.css +1 -1
- package/lib/tabs/src/tabs.js +21 -8
- package/lib/tabs/src/tabs.min.js +1 -1
- package/lib/tree/src/tree.js +438 -51
- package/lib/tree/src/tree.min.js +1 -1
- package/lib/tree/style/style.css +43 -0
- package/lib/tree/style/style.min.css +1 -1
- package/lib/ui/index.js +1 -1
- 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/ui/src/utils.js +4 -0
- package/lib/ui/src/utils.min.js +1 -1
- package/lib/vxe-drawer/style/style.css +13 -6
- package/lib/vxe-drawer/style/style.min.css +1 -1
- package/lib/vxe-list/style/style.css +25 -8
- package/lib/vxe-list/style/style.min.css +1 -1
- package/lib/vxe-modal/style/style.css +4 -0
- package/lib/vxe-modal/style/style.min.css +1 -1
- package/lib/vxe-tree/style/style.css +43 -0
- package/lib/vxe-tree/style/style.min.css +1 -1
- package/package.json +2 -2
- package/packages/card/src/card.ts +21 -4
- package/packages/drawer/src/drawer.ts +80 -16
- package/packages/language/fr-FR.ts +903 -903
- package/packages/layout-aside/src/layout-aside.ts +10 -6
- package/packages/layout-body/src/layout-body.ts +28 -15
- package/packages/list/src/list.ts +149 -55
- package/packages/menu/src/menu.ts +2 -2
- package/packages/modal/src/modal.ts +83 -19
- package/packages/scrollbar/src/scrollbar.ts +101 -19
- package/packages/tabs/src/tabs.ts +22 -9
- package/packages/tree/src/tree.ts +508 -65
- package/packages/ui/src/utils.ts +4 -0
- package/styles/components/drawer.scss +13 -6
- package/styles/components/list.scss +35 -10
- package/styles/components/modal.scss +4 -0
- package/styles/components/tree.scss +76 -0
- package/types/components/card.d.ts +10 -1
- package/types/components/drawer.d.ts +20 -0
- package/types/components/gantt-module/gantt-view.d.ts +24 -1
- package/types/components/gantt.d.ts +2 -0
- package/types/components/layout-aside.d.ts +10 -1
- package/types/components/layout-body.d.ts +10 -1
- package/types/components/list.d.ts +13 -2
- package/types/components/modal.d.ts +20 -0
- package/types/components/scrollbar.d.ts +16 -2
- package/types/components/table.d.ts +80 -6
- package/types/components/tabs.d.ts +10 -1
- package/types/components/tree.d.ts +35 -2
- /package/es/icon/{iconfont.1791880407207.ttf → iconfont.1792034961185.ttf} +0 -0
- /package/es/icon/{iconfont.1791880407207.woff → iconfont.1792034961185.woff} +0 -0
- /package/es/icon/{iconfont.1791880407207.woff2 → iconfont.1792034961185.woff2} +0 -0
- /package/es/{iconfont.1791880407207.ttf → iconfont.1792034961185.ttf} +0 -0
- /package/es/{iconfont.1791880407207.woff → iconfont.1792034961185.woff} +0 -0
- /package/es/{iconfont.1791880407207.woff2 → iconfont.1792034961185.woff2} +0 -0
- /package/lib/icon/style/{iconfont.1791880407207.ttf → iconfont.1792034961185.ttf} +0 -0
- /package/lib/icon/style/{iconfont.1791880407207.woff → iconfont.1792034961185.woff} +0 -0
- /package/lib/icon/style/{iconfont.1791880407207.woff2 → iconfont.1792034961185.woff2} +0 -0
- /package/lib/{iconfont.1791880407207.ttf → iconfont.1792034961185.ttf} +0 -0
- /package/lib/{iconfont.1791880407207.woff → iconfont.1792034961185.woff} +0 -0
- /package/lib/{iconfont.1791880407207.woff2 → iconfont.1792034961185.woff2} +0 -0
package/lib/tree/src/tree.js
CHANGED
|
@@ -14,6 +14,7 @@ var _store = require("./store");
|
|
|
14
14
|
var _dom = require("../../ui/src/dom");
|
|
15
15
|
var _utils = require("../../ui/src/utils");
|
|
16
16
|
var _anime = require("../../ui/src/anime");
|
|
17
|
+
var _util2 = require("../../scrollbar/src/util");
|
|
17
18
|
var _loading = _interopRequireDefault(require("../../loading"));
|
|
18
19
|
var _tooltip = _interopRequireDefault(require("../../tooltip"));
|
|
19
20
|
function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
|
|
@@ -522,6 +523,34 @@ function insertTreeNode($xeTree, newRecords, isAppend) {
|
|
|
522
523
|
nodeMaps[nodeid] = itemRest;
|
|
523
524
|
});
|
|
524
525
|
}
|
|
526
|
+
function createReactData() {
|
|
527
|
+
return {
|
|
528
|
+
parentHeight: 0,
|
|
529
|
+
customHeight: 0,
|
|
530
|
+
customMinHeight: 0,
|
|
531
|
+
customMaxHeight: 0,
|
|
532
|
+
currentNode: null,
|
|
533
|
+
scrollYLoad: false,
|
|
534
|
+
bodyHeight: 0,
|
|
535
|
+
topSpaceHeight: 0,
|
|
536
|
+
selectRadioKey: null,
|
|
537
|
+
treeList: [],
|
|
538
|
+
updateExpandedFlag: 1,
|
|
539
|
+
updateCheckboxFlag: 1,
|
|
540
|
+
// 滚动条
|
|
541
|
+
yThumbHeight: 0,
|
|
542
|
+
xThumbWidth: 0,
|
|
543
|
+
insertNodeFlag: 1,
|
|
544
|
+
removeNodeFlag: 1,
|
|
545
|
+
dragNode: null,
|
|
546
|
+
dragTipText: '',
|
|
547
|
+
isCrossDragNode: false,
|
|
548
|
+
tooltipStore: {
|
|
549
|
+
visible: false,
|
|
550
|
+
node: null
|
|
551
|
+
}
|
|
552
|
+
};
|
|
553
|
+
}
|
|
525
554
|
function createInternalData() {
|
|
526
555
|
return {
|
|
527
556
|
// initialized: false,
|
|
@@ -534,8 +563,15 @@ function createInternalData() {
|
|
|
534
563
|
indeterminateNodeMaps: {},
|
|
535
564
|
treeExpandedMaps: {},
|
|
536
565
|
treeExpandLazyLoadedMaps: {},
|
|
537
|
-
|
|
566
|
+
// resizeObserver: undefined,
|
|
567
|
+
// 滚动条
|
|
568
|
+
// scrollObserver: undefined,
|
|
569
|
+
// isThumbDrag: false,
|
|
570
|
+
thumbDragOffset: 0,
|
|
571
|
+
yThumbTop: 0,
|
|
572
|
+
xThumbLeft: 0,
|
|
538
573
|
lastScrollTop: 0,
|
|
574
|
+
lastScrollLeft: 0,
|
|
539
575
|
scrollYStore: {
|
|
540
576
|
startIndex: 0,
|
|
541
577
|
endIndex: 0,
|
|
@@ -552,31 +588,6 @@ function createInternalData() {
|
|
|
552
588
|
// hpTimeout: undefined
|
|
553
589
|
};
|
|
554
590
|
}
|
|
555
|
-
function createReactData() {
|
|
556
|
-
return {
|
|
557
|
-
parentHeight: 0,
|
|
558
|
-
customHeight: 0,
|
|
559
|
-
customMinHeight: 0,
|
|
560
|
-
customMaxHeight: 0,
|
|
561
|
-
currentNode: null,
|
|
562
|
-
scrollYLoad: false,
|
|
563
|
-
bodyHeight: 0,
|
|
564
|
-
topSpaceHeight: 0,
|
|
565
|
-
selectRadioKey: null,
|
|
566
|
-
treeList: [],
|
|
567
|
-
updateExpandedFlag: 1,
|
|
568
|
-
updateCheckboxFlag: 1,
|
|
569
|
-
insertNodeFlag: 1,
|
|
570
|
-
removeNodeFlag: 1,
|
|
571
|
-
dragNode: null,
|
|
572
|
-
dragTipText: '',
|
|
573
|
-
isCrossDragNode: false,
|
|
574
|
-
tooltipStore: {
|
|
575
|
-
visible: false,
|
|
576
|
-
node: null
|
|
577
|
-
}
|
|
578
|
-
};
|
|
579
|
-
}
|
|
580
591
|
var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defineVxeComponent)({
|
|
581
592
|
name: 'VxeTree',
|
|
582
593
|
mixins: [_ui.globalMixins.sizeMixin],
|
|
@@ -755,7 +766,14 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
755
766
|
return getConfig().tree.size || getConfig().size;
|
|
756
767
|
}
|
|
757
768
|
},
|
|
758
|
-
virtualYConfig: Object
|
|
769
|
+
virtualYConfig: Object,
|
|
770
|
+
useScrollbar: {
|
|
771
|
+
type: Boolean,
|
|
772
|
+
default: function _default() {
|
|
773
|
+
return (0, _utils.getDefaultConfig)(getConfig().tree.useScrollbar, getConfig().useScrollbar);
|
|
774
|
+
}
|
|
775
|
+
},
|
|
776
|
+
scrollbarConfig: Object
|
|
759
777
|
},
|
|
760
778
|
provide: function provide() {
|
|
761
779
|
var $xeTree = this;
|
|
@@ -770,7 +788,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
770
788
|
xID: xID,
|
|
771
789
|
reactData: reactData,
|
|
772
790
|
crossTreeDragNodeInfo: _store.crossTreeDragNodeGlobal,
|
|
773
|
-
|
|
791
|
+
reFlag: 0,
|
|
774
792
|
dataFlag: 0
|
|
775
793
|
});
|
|
776
794
|
},
|
|
@@ -875,6 +893,17 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
875
893
|
var props = $xeTree;
|
|
876
894
|
return Object.assign({}, getConfig().tree.menuConfig, props.menuConfig);
|
|
877
895
|
},
|
|
896
|
+
computeWrapperStyles: function computeWrapperStyles() {
|
|
897
|
+
var $xeTree = this;
|
|
898
|
+
var barWidth = $xeTree.computeScrollYWidth;
|
|
899
|
+
var barHeight = $xeTree.computeScrollXHeight;
|
|
900
|
+
var stys = {};
|
|
901
|
+
if (barWidth || barHeight) {
|
|
902
|
+
stys['--vxe-ui-scrollbar-y-width'] = (0, _dom.toCssUnit)(barWidth || barHeight);
|
|
903
|
+
stys['--vxe-ui-scrollbar-x-height'] = (0, _dom.toCssUnit)(barHeight || barWidth);
|
|
904
|
+
}
|
|
905
|
+
return stys;
|
|
906
|
+
},
|
|
878
907
|
computeTreeStyle: function computeTreeStyle() {
|
|
879
908
|
var $xeTree = this;
|
|
880
909
|
var props = $xeTree;
|
|
@@ -914,6 +943,83 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
914
943
|
var $xeTree = this;
|
|
915
944
|
var props = $xeTree;
|
|
916
945
|
return Object.assign({}, getConfig().tree.filterConfig, props.filterConfig);
|
|
946
|
+
},
|
|
947
|
+
computeScrollbarOpts: function computeScrollbarOpts() {
|
|
948
|
+
var $xeTree = this;
|
|
949
|
+
var props = $xeTree;
|
|
950
|
+
return Object.assign({}, getConfig().tree.scrollbarConfig, props.scrollbarConfig);
|
|
951
|
+
},
|
|
952
|
+
computeScrollbarXOpts: function computeScrollbarXOpts() {
|
|
953
|
+
var $xeTree = this;
|
|
954
|
+
var scrollbarOpts = $xeTree.computeScrollbarOpts;
|
|
955
|
+
return Object.assign({}, getConfig().scrollbar.xConfig, scrollbarOpts.xConfig, {
|
|
956
|
+
visible: false
|
|
957
|
+
});
|
|
958
|
+
},
|
|
959
|
+
computeScrollbarYOpts: function computeScrollbarYOpts() {
|
|
960
|
+
var $xeTree = this;
|
|
961
|
+
var scrollbarOpts = $xeTree.computeScrollbarOpts;
|
|
962
|
+
return Object.assign({}, getConfig().scrollbar.yConfig, scrollbarOpts.yConfig);
|
|
963
|
+
},
|
|
964
|
+
computeScrollXHeight: function computeScrollXHeight() {
|
|
965
|
+
var $xeTree = this;
|
|
966
|
+
var scrollbarOpts = $xeTree.computeScrollbarOpts;
|
|
967
|
+
var scrollbarXOpts = $xeTree.computeScrollbarXOpts;
|
|
968
|
+
return (0, _utils.getDefaultConfig)((0, _utils.getDefaultConfig)(scrollbarXOpts.height, scrollbarOpts.height), getConfig().scrollbar.height);
|
|
969
|
+
},
|
|
970
|
+
computeScrollYWidth: function computeScrollYWidth() {
|
|
971
|
+
var $xeTree = this;
|
|
972
|
+
var scrollbarOpts = $xeTree.computeScrollbarOpts;
|
|
973
|
+
var scrollbarYOpts = $xeTree.computeScrollbarYOpts;
|
|
974
|
+
return (0, _utils.getDefaultConfig)((0, _utils.getDefaultConfig)(scrollbarYOpts.width, scrollbarOpts.width), getConfig().scrollbar.width);
|
|
975
|
+
},
|
|
976
|
+
computeScrollXVisible: function computeScrollXVisible() {
|
|
977
|
+
var $xeTree = this;
|
|
978
|
+
var scrollbarOpts = $xeTree.computeScrollbarOpts;
|
|
979
|
+
var scrollbarXOpts = $xeTree.computeScrollbarXOpts;
|
|
980
|
+
return (0, _utils.getDefaultConfig)(scrollbarXOpts.visible, scrollbarOpts.visible);
|
|
981
|
+
},
|
|
982
|
+
computeScrollYVisible: function computeScrollYVisible() {
|
|
983
|
+
var $xeTree = this;
|
|
984
|
+
var scrollbarOpts = $xeTree.computeScrollbarOpts;
|
|
985
|
+
var scrollbarYOpts = $xeTree.computeScrollbarYOpts;
|
|
986
|
+
return (0, _utils.getDefaultConfig)(scrollbarYOpts.visible, scrollbarOpts.visible);
|
|
987
|
+
},
|
|
988
|
+
computeScrollXAutoHide: function computeScrollXAutoHide() {
|
|
989
|
+
var $xeTree = this;
|
|
990
|
+
var scrollbarOpts = $xeTree.computeScrollbarOpts;
|
|
991
|
+
var scrollbarXOpts = $xeTree.computeScrollbarXOpts;
|
|
992
|
+
return (0, _utils.getDefaultConfig)((0, _utils.getDefaultConfig)(scrollbarXOpts.autoHide, scrollbarOpts.autoHide), getConfig().scrollbar.autoHide);
|
|
993
|
+
},
|
|
994
|
+
computeScrollYAutoHide: function computeScrollYAutoHide() {
|
|
995
|
+
var $xeTree = this;
|
|
996
|
+
var scrollbarOpts = $xeTree.computeScrollbarOpts;
|
|
997
|
+
var scrollbarYOpts = $xeTree.computeScrollbarYOpts;
|
|
998
|
+
return (0, _utils.getDefaultConfig)((0, _utils.getDefaultConfig)(scrollbarYOpts.autoHide, scrollbarOpts.autoHide), getConfig().scrollbar.autoHide);
|
|
999
|
+
},
|
|
1000
|
+
computeScrollbarWrapperClss: function computeScrollbarWrapperClss() {
|
|
1001
|
+
var $xeTree = this;
|
|
1002
|
+
var reactData = $xeTree.reactData;
|
|
1003
|
+
var yThumbHeight = reactData.yThumbHeight,
|
|
1004
|
+
xThumbWidth = reactData.xThumbWidth;
|
|
1005
|
+
var scrollbarXToTop = $xeTree.computeScrollbarXToTop;
|
|
1006
|
+
var scrollbarYToLeft = $xeTree.computeScrollbarYToLeft;
|
|
1007
|
+
var scrollXVisible = $xeTree.computeScrollXVisible;
|
|
1008
|
+
var scrollYVisible = $xeTree.computeScrollYVisible;
|
|
1009
|
+
return _ui.domUtils.buildClass(['vxe-scrollbar is--virtual', "ov-x--".concat(scrollXVisible === false ? 'hidden' : 'visible'), "ov-y--".concat(scrollYVisible === false ? 'hidden' : 'visible'), "sx-pos--".concat(scrollbarXToTop ? 'top' : 'bottom'), "sy-pos--".concat(scrollbarYToLeft ? 'left' : 'right')], {
|
|
1010
|
+
'overflow-y': yThumbHeight,
|
|
1011
|
+
'overflow-x': xThumbWidth
|
|
1012
|
+
});
|
|
1013
|
+
},
|
|
1014
|
+
computeScrollbarXToTop: function computeScrollbarXToTop() {
|
|
1015
|
+
var $xeTree = this;
|
|
1016
|
+
var scrollbarXOpts = $xeTree.computeScrollbarXOpts;
|
|
1017
|
+
return scrollbarXOpts.position === 'top';
|
|
1018
|
+
},
|
|
1019
|
+
computeScrollbarYToLeft: function computeScrollbarYToLeft() {
|
|
1020
|
+
var $xeTree = this;
|
|
1021
|
+
var scrollbarYOpts = $xeTree.computeScrollbarYOpts;
|
|
1022
|
+
return scrollbarYOpts.position === 'left';
|
|
917
1023
|
}
|
|
918
1024
|
}),
|
|
919
1025
|
methods: {
|
|
@@ -1563,6 +1669,11 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
1563
1669
|
}
|
|
1564
1670
|
});
|
|
1565
1671
|
},
|
|
1672
|
+
updateScrollbar: function updateScrollbar() {
|
|
1673
|
+
var $xeTree = this;
|
|
1674
|
+
$xeTree.updateThumbSize();
|
|
1675
|
+
$xeTree.updateThumbOffset();
|
|
1676
|
+
},
|
|
1566
1677
|
/**
|
|
1567
1678
|
* 重新计算列表
|
|
1568
1679
|
*/
|
|
@@ -1587,6 +1698,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
1587
1698
|
var parentPaddingSize = (0, _dom.getPaddingTopBottomSize)(parentEl);
|
|
1588
1699
|
reactData.parentHeight = Math.max(headHeight + footHeight + rowHeight, parentEl.clientHeight - parentPaddingSize - headHeight - footHeight);
|
|
1589
1700
|
}
|
|
1701
|
+
$xeTree.updateScrollbar();
|
|
1590
1702
|
$xeTree.updateHeight();
|
|
1591
1703
|
return $xeTree.computeScrollLoad().then(function () {
|
|
1592
1704
|
$xeTree.updateHeight();
|
|
@@ -1635,6 +1747,7 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
1635
1747
|
var scrollLeft = scrollBodyElem.scrollLeft;
|
|
1636
1748
|
var isX = scrollLeft !== internalData.lastScrollLeft;
|
|
1637
1749
|
var isY = scrollTop !== internalData.lastScrollTop;
|
|
1750
|
+
$xeTree.updateThumbOffset();
|
|
1638
1751
|
internalData.lastScrollTop = scrollTop;
|
|
1639
1752
|
internalData.lastScrollLeft = scrollLeft;
|
|
1640
1753
|
if (reactData.scrollYLoad) {
|
|
@@ -2623,14 +2736,6 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
2623
2736
|
checked: isChecked
|
|
2624
2737
|
}, evnt);
|
|
2625
2738
|
},
|
|
2626
|
-
handleGlobalResizeEvent: function handleGlobalResizeEvent() {
|
|
2627
|
-
var $xeTree = this;
|
|
2628
|
-
var el = $xeTree.$refs.refElem;
|
|
2629
|
-
if (!el || !el.clientWidth) {
|
|
2630
|
-
return;
|
|
2631
|
-
}
|
|
2632
|
-
$xeTree.recalculate();
|
|
2633
|
-
},
|
|
2634
2739
|
reloadData: function reloadData(data) {
|
|
2635
2740
|
var $xeTree = this;
|
|
2636
2741
|
return $xeTree.loadData(data || []);
|
|
@@ -3429,6 +3534,189 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
3429
3534
|
}, evnt);
|
|
3430
3535
|
}
|
|
3431
3536
|
},
|
|
3537
|
+
// 滚动条
|
|
3538
|
+
updateThumbSize: function updateThumbSize() {
|
|
3539
|
+
var $xeTree = this;
|
|
3540
|
+
var reactData = $xeTree.reactData;
|
|
3541
|
+
var viewEl = $xeTree.$refs.refVirtualWrapper;
|
|
3542
|
+
if (!viewEl) {
|
|
3543
|
+
return;
|
|
3544
|
+
}
|
|
3545
|
+
if (!viewEl.clientHeight || !viewEl.clientHeight) {
|
|
3546
|
+
return;
|
|
3547
|
+
}
|
|
3548
|
+
var trackXEl = $xeTree.$refs.refTrackXElem;
|
|
3549
|
+
var xThumbWidth = trackXEl ? (0, _util2.getThumbSize)(viewEl.clientWidth, viewEl.scrollWidth, trackXEl.clientWidth) : 0;
|
|
3550
|
+
var thumbXElem = $xeTree.$refs.refThumbXElem;
|
|
3551
|
+
if (thumbXElem) {
|
|
3552
|
+
thumbXElem.style.width = xThumbWidth + 'px';
|
|
3553
|
+
}
|
|
3554
|
+
reactData.xThumbWidth = xThumbWidth;
|
|
3555
|
+
var trackYEl = $xeTree.$refs.refTrackYElem;
|
|
3556
|
+
var yThumbHeight = trackYEl ? (0, _util2.getThumbSize)(viewEl.clientHeight, viewEl.scrollHeight, trackYEl.clientHeight) : 0;
|
|
3557
|
+
var thumbYElem = $xeTree.$refs.refThumbYElem;
|
|
3558
|
+
if (thumbYElem) {
|
|
3559
|
+
thumbYElem.style.height = yThumbHeight + 'px';
|
|
3560
|
+
}
|
|
3561
|
+
reactData.yThumbHeight = yThumbHeight;
|
|
3562
|
+
},
|
|
3563
|
+
updateThumbOffset: function updateThumbOffset() {
|
|
3564
|
+
var $xeTree = this;
|
|
3565
|
+
var reactData = $xeTree.reactData;
|
|
3566
|
+
var internalData = $xeTree.internalData;
|
|
3567
|
+
var viewEl = $xeTree.$refs.refVirtualWrapper;
|
|
3568
|
+
if (!viewEl) {
|
|
3569
|
+
return;
|
|
3570
|
+
}
|
|
3571
|
+
if (!viewEl.clientHeight || !viewEl.clientHeight) {
|
|
3572
|
+
return;
|
|
3573
|
+
}
|
|
3574
|
+
var xThumbWidth = reactData.xThumbWidth,
|
|
3575
|
+
yThumbHeight = reactData.yThumbHeight;
|
|
3576
|
+
var trackXEl = $xeTree.$refs.refTrackXElem;
|
|
3577
|
+
var thumbXElem = $xeTree.$refs.refThumbXElem;
|
|
3578
|
+
var xThumbLeft = trackXEl && xThumbWidth ? (0, _util2.getThumbOffsetSize)(viewEl.scrollLeft, viewEl.clientWidth, viewEl.scrollWidth, trackXEl.clientWidth, xThumbWidth) : 0;
|
|
3579
|
+
internalData.xThumbLeft = xThumbLeft;
|
|
3580
|
+
if (thumbXElem && xThumbWidth) {
|
|
3581
|
+
thumbXElem.style.width = xThumbWidth + 'px';
|
|
3582
|
+
thumbXElem.style.transform = "translateX(".concat(xThumbLeft, "px)");
|
|
3583
|
+
}
|
|
3584
|
+
var trackYEl = $xeTree.$refs.refTrackYElem;
|
|
3585
|
+
var thumbYElem = $xeTree.$refs.refThumbYElem;
|
|
3586
|
+
var yThumbTop = trackYEl && yThumbHeight ? (0, _util2.getThumbOffsetSize)(viewEl.scrollTop, viewEl.clientHeight, viewEl.scrollHeight, trackYEl.clientHeight, yThumbHeight) : 0;
|
|
3587
|
+
internalData.yThumbTop = yThumbTop;
|
|
3588
|
+
if (thumbYElem && yThumbHeight) {
|
|
3589
|
+
thumbYElem.style.height = yThumbHeight + 'px';
|
|
3590
|
+
thumbYElem.style.transform = "translateY(".concat(yThumbTop, "px)");
|
|
3591
|
+
}
|
|
3592
|
+
},
|
|
3593
|
+
clickTrackXEvent: function clickTrackXEvent(evnt) {
|
|
3594
|
+
var $xeTree = this;
|
|
3595
|
+
var reactData = $xeTree.reactData;
|
|
3596
|
+
var trackEl = evnt.currentTarget;
|
|
3597
|
+
if (trackEl !== evnt.target) {
|
|
3598
|
+
return;
|
|
3599
|
+
}
|
|
3600
|
+
var viewEl = $xeTree.$refs.refVirtualWrapper;
|
|
3601
|
+
if (!viewEl) {
|
|
3602
|
+
return;
|
|
3603
|
+
}
|
|
3604
|
+
var xThumbWidth = reactData.xThumbWidth;
|
|
3605
|
+
var trackRect = trackEl.getBoundingClientRect();
|
|
3606
|
+
viewEl.scrollTo({
|
|
3607
|
+
left: (0, _util2.getScrollFromClick)(evnt.clientX - trackRect.left, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth),
|
|
3608
|
+
behavior: 'auto'
|
|
3609
|
+
});
|
|
3610
|
+
},
|
|
3611
|
+
clickTrackYEvent: function clickTrackYEvent(evnt) {
|
|
3612
|
+
var $xeTree = this;
|
|
3613
|
+
var reactData = $xeTree.reactData;
|
|
3614
|
+
var trackEl = evnt.currentTarget;
|
|
3615
|
+
if (trackEl !== evnt.target) {
|
|
3616
|
+
return;
|
|
3617
|
+
}
|
|
3618
|
+
var viewEl = $xeTree.$refs.refVirtualWrapper;
|
|
3619
|
+
if (!viewEl) {
|
|
3620
|
+
return;
|
|
3621
|
+
}
|
|
3622
|
+
var yThumbHeight = reactData.yThumbHeight;
|
|
3623
|
+
var trackRect = trackEl.getBoundingClientRect();
|
|
3624
|
+
viewEl.scrollTo({
|
|
3625
|
+
top: (0, _util2.getScrollFromClick)(evnt.clientY - trackRect.top, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight),
|
|
3626
|
+
behavior: 'auto'
|
|
3627
|
+
});
|
|
3628
|
+
},
|
|
3629
|
+
pointerdownThumbXEvent: function pointerdownThumbXEvent(evnt) {
|
|
3630
|
+
var $xeTree = this;
|
|
3631
|
+
var reactData = $xeTree.reactData;
|
|
3632
|
+
var internalData = $xeTree.internalData;
|
|
3633
|
+
var thumbEl = evnt.currentTarget;
|
|
3634
|
+
internalData.isThumbDrag = true;
|
|
3635
|
+
thumbEl.setPointerCapture(evnt.pointerId);
|
|
3636
|
+
var viewEl = $xeTree.$refs.refVirtualWrapper;
|
|
3637
|
+
if (!viewEl) {
|
|
3638
|
+
return;
|
|
3639
|
+
}
|
|
3640
|
+
var xThumbWidth = reactData.xThumbWidth;
|
|
3641
|
+
var trackEl = thumbEl.parentElement;
|
|
3642
|
+
var trackRect = trackEl.getBoundingClientRect();
|
|
3643
|
+
var pointerPosition = evnt.clientX - trackRect.left;
|
|
3644
|
+
// 记录 thumb 的偏移
|
|
3645
|
+
var thumbOffset = (0, _util2.getThumbOffsetSize)(viewEl.scrollLeft, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth);
|
|
3646
|
+
internalData.thumbDragOffset = pointerPosition - thumbOffset;
|
|
3647
|
+
},
|
|
3648
|
+
pointermoveThumbXEvent: function pointermoveThumbXEvent(evnt) {
|
|
3649
|
+
var $xeTree = this;
|
|
3650
|
+
var reactData = $xeTree.reactData;
|
|
3651
|
+
var internalData = $xeTree.internalData;
|
|
3652
|
+
var thumbEl = evnt.currentTarget;
|
|
3653
|
+
if (!thumbEl.hasPointerCapture(evnt.pointerId)) {
|
|
3654
|
+
return;
|
|
3655
|
+
}
|
|
3656
|
+
var isThumbDrag = internalData.isThumbDrag,
|
|
3657
|
+
thumbDragOffset = internalData.thumbDragOffset;
|
|
3658
|
+
if (isThumbDrag) {
|
|
3659
|
+
var viewEl = $xeTree.$refs.refVirtualWrapper;
|
|
3660
|
+
if (!viewEl) {
|
|
3661
|
+
return;
|
|
3662
|
+
}
|
|
3663
|
+
var xThumbWidth = reactData.xThumbWidth;
|
|
3664
|
+
var _thumbEl = evnt.currentTarget;
|
|
3665
|
+
var trackEl = _thumbEl.parentElement;
|
|
3666
|
+
var trackRect = trackEl.getBoundingClientRect();
|
|
3667
|
+
// 更新偏移
|
|
3668
|
+
viewEl.scrollLeft = (0, _util2.getScrollFromDrag)(evnt.clientX - trackRect.left, thumbDragOffset, viewEl.clientWidth, viewEl.scrollWidth, trackEl.clientWidth, xThumbWidth);
|
|
3669
|
+
}
|
|
3670
|
+
},
|
|
3671
|
+
cleatPointerThumbEvent: function cleatPointerThumbEvent(evnt) {
|
|
3672
|
+
var $xeTree = this;
|
|
3673
|
+
var internalData = $xeTree.internalData;
|
|
3674
|
+
var thumbEl = evnt.currentTarget;
|
|
3675
|
+
thumbEl.releasePointerCapture(evnt.pointerId);
|
|
3676
|
+
internalData.isThumbDrag = false;
|
|
3677
|
+
},
|
|
3678
|
+
pointerdownThumbYEvent: function pointerdownThumbYEvent(evnt) {
|
|
3679
|
+
var $xeTree = this;
|
|
3680
|
+
var reactData = $xeTree.reactData;
|
|
3681
|
+
var internalData = $xeTree.internalData;
|
|
3682
|
+
var thumbEl = evnt.currentTarget;
|
|
3683
|
+
internalData.isThumbDrag = true;
|
|
3684
|
+
thumbEl.setPointerCapture(evnt.pointerId);
|
|
3685
|
+
var viewEl = $xeTree.$refs.refVirtualWrapper;
|
|
3686
|
+
if (!viewEl) {
|
|
3687
|
+
return;
|
|
3688
|
+
}
|
|
3689
|
+
var yThumbHeight = reactData.yThumbHeight;
|
|
3690
|
+
var trackEl = thumbEl.parentElement;
|
|
3691
|
+
var trackRect = trackEl.getBoundingClientRect();
|
|
3692
|
+
var pointerPosition = evnt.clientY - trackRect.top;
|
|
3693
|
+
// 记录 thumb 的偏移
|
|
3694
|
+
var thumbOffset = (0, _util2.getThumbOffsetSize)(viewEl.scrollTop, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight);
|
|
3695
|
+
internalData.thumbDragOffset = pointerPosition - thumbOffset;
|
|
3696
|
+
},
|
|
3697
|
+
pointermoveThumbYEvent: function pointermoveThumbYEvent(evnt) {
|
|
3698
|
+
var $xeTree = this;
|
|
3699
|
+
var reactData = $xeTree.reactData;
|
|
3700
|
+
var internalData = $xeTree.internalData;
|
|
3701
|
+
var thumbEl = evnt.currentTarget;
|
|
3702
|
+
if (!thumbEl.hasPointerCapture(evnt.pointerId)) {
|
|
3703
|
+
return;
|
|
3704
|
+
}
|
|
3705
|
+
var isThumbDrag = internalData.isThumbDrag,
|
|
3706
|
+
thumbDragOffset = internalData.thumbDragOffset;
|
|
3707
|
+
if (isThumbDrag) {
|
|
3708
|
+
var viewEl = $xeTree.$refs.refVirtualWrapper;
|
|
3709
|
+
if (!viewEl) {
|
|
3710
|
+
return;
|
|
3711
|
+
}
|
|
3712
|
+
var yThumbHeight = reactData.yThumbHeight;
|
|
3713
|
+
var _thumbEl2 = evnt.currentTarget;
|
|
3714
|
+
var trackEl = _thumbEl2.parentElement;
|
|
3715
|
+
var trackRect = trackEl.getBoundingClientRect();
|
|
3716
|
+
// 更新偏移
|
|
3717
|
+
viewEl.scrollTop = (0, _util2.getScrollFromDrag)(evnt.clientY - trackRect.top, thumbDragOffset, viewEl.clientHeight, viewEl.scrollHeight, trackEl.clientHeight, yThumbHeight);
|
|
3718
|
+
}
|
|
3719
|
+
},
|
|
3432
3720
|
//
|
|
3433
3721
|
// Render
|
|
3434
3722
|
//
|
|
@@ -3756,22 +4044,27 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
3756
4044
|
return (0, _ui.renderEmptyElement)($xeTree);
|
|
3757
4045
|
},
|
|
3758
4046
|
renderVN: function renderVN(h) {
|
|
4047
|
+
var _ref;
|
|
3759
4048
|
var $xeTree = this;
|
|
3760
4049
|
var props = $xeTree;
|
|
3761
4050
|
var slots = $xeTree.$scopedSlots;
|
|
3762
4051
|
var reactData = $xeTree.reactData;
|
|
3763
4052
|
var loading = props.loading,
|
|
3764
4053
|
trigger = props.trigger,
|
|
3765
|
-
showLine = props.showLine
|
|
4054
|
+
showLine = props.showLine,
|
|
4055
|
+
useScrollbar = props.useScrollbar;
|
|
3766
4056
|
var bodyHeight = reactData.bodyHeight,
|
|
3767
4057
|
topSpaceHeight = reactData.topSpaceHeight,
|
|
3768
4058
|
treeList = reactData.treeList,
|
|
3769
|
-
tooltipStore = reactData.tooltipStore
|
|
4059
|
+
tooltipStore = reactData.tooltipStore,
|
|
4060
|
+
xThumbWidth = reactData.xThumbWidth,
|
|
4061
|
+
yThumbHeight = reactData.yThumbHeight;
|
|
3770
4062
|
var vSize = $xeTree.computeSize;
|
|
3771
4063
|
var radioOpts = $xeTree.computeRadioOpts;
|
|
3772
4064
|
var checkboxOpts = $xeTree.computeCheckboxOpts;
|
|
3773
4065
|
var loadingOpts = $xeTree.computeLoadingOpts;
|
|
3774
4066
|
var isNodeHover = $xeTree.computeIsNodeHover;
|
|
4067
|
+
var wrapperStyles = $xeTree.computeWrapperStyles;
|
|
3775
4068
|
var treeStyle = $xeTree.computeTreeStyle;
|
|
3776
4069
|
var dragOpts = $xeTree.computeDragOpts;
|
|
3777
4070
|
var tooltipOpts = $xeTree.computeTooltipOpts;
|
|
@@ -3779,13 +4072,22 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
3779
4072
|
var headerSlot = slots.header;
|
|
3780
4073
|
var footerSlot = slots.footer;
|
|
3781
4074
|
var tooltipSlot = slots.tooltip;
|
|
4075
|
+
var scrollbarOpts = $xeTree.computeScrollbarOpts;
|
|
4076
|
+
var scrollXVisible = $xeTree.computeScrollXVisible;
|
|
4077
|
+
var scrollYVisible = $xeTree.computeScrollYVisible;
|
|
4078
|
+
var scrollbarXToTop = $xeTree.computeScrollbarXToTop;
|
|
4079
|
+
var scrollbarYToLeft = $xeTree.computeScrollbarYToLeft;
|
|
4080
|
+
var scrollXAutoHide = $xeTree.computeScrollXAutoHide;
|
|
4081
|
+
var scrollYAutoHide = $xeTree.computeScrollYAutoHide;
|
|
4082
|
+
var scrollbarWrapperClss = $xeTree.computeScrollbarWrapperClss;
|
|
3782
4083
|
var teOns = {};
|
|
3783
4084
|
if (dragOpts.isCrossTreeDrag && !treeList.length) {
|
|
3784
4085
|
teOns.dragover = $xeTree.handleCrossTreeNodeDragoverEmptyEvent;
|
|
3785
4086
|
}
|
|
3786
4087
|
return h('div', {
|
|
3787
4088
|
ref: 'refElem',
|
|
3788
|
-
class: ['vxe-tree', _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(
|
|
4089
|
+
class: ['vxe-tree', useScrollbar ? "ov-x--".concat(scrollXVisible === false ? 'hidden' : 'visible') : '', useScrollbar ? "ov-y--".concat(scrollYVisible === false ? 'hidden' : 'visible') : '', useScrollbar ? "sx-pos--".concat(scrollbarXToTop ? 'top' : 'bottom') : '', useScrollbar ? "sy-pos--".concat(scrollbarYToLeft ? 'left' : 'right') : '', (_ref = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_ref, "size--".concat(vSize), vSize), 'show--line', showLine), 'is--virtual-scrollbar', useScrollbar), 'ov-padding', useScrollbar && scrollbarOpts.padding), 'ov-x--auto-hide', useScrollbar && scrollXAutoHide), 'ov-y--auto-hide', useScrollbar && scrollYAutoHide), 'overflow-y', yThumbHeight), 'overflow-x', xThumbWidth), 'checkbox--highlight', checkboxOpts.highlight), 'radio--highlight', radioOpts.highlight), _defineProperty(_defineProperty(_defineProperty(_ref, 'node--hover', isNodeHover), 'node--trigger', trigger === 'node'), 'is--loading', loading))],
|
|
4090
|
+
style: wrapperStyles,
|
|
3789
4091
|
on: teOns
|
|
3790
4092
|
}, [headerSlot ? h('div', {
|
|
3791
4093
|
ref: 'refHeaderWrapperElem',
|
|
@@ -3816,6 +4118,44 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
3816
4118
|
}, footerSlot({
|
|
3817
4119
|
$tree: $xeTree
|
|
3818
4120
|
})) : (0, _ui.renderEmptyElement)($xeTree),
|
|
4121
|
+
/**
|
|
4122
|
+
* 滚动条
|
|
4123
|
+
*/
|
|
4124
|
+
useScrollbar ? h('div', {
|
|
4125
|
+
class: scrollbarWrapperClss
|
|
4126
|
+
}, [scrollXVisible === false ? (0, _ui.renderEmptyElement)($xeTree) : h('div', {
|
|
4127
|
+
ref: 'refTrackXElem',
|
|
4128
|
+
class: 'vxe-scrollbar--track-x',
|
|
4129
|
+
on: {
|
|
4130
|
+
click: $xeTree.clickTrackXEvent
|
|
4131
|
+
}
|
|
4132
|
+
}, [h('div', {
|
|
4133
|
+
ref: 'refThumbXElem',
|
|
4134
|
+
class: 'vxe-scrollbar--thumb-x',
|
|
4135
|
+
on: {
|
|
4136
|
+
pointerdown: $xeTree.pointerdownThumbXEvent,
|
|
4137
|
+
pointermove: $xeTree.pointermoveThumbXEvent,
|
|
4138
|
+
pointerup: $xeTree.cleatPointerThumbEvent,
|
|
4139
|
+
pointercancel: $xeTree.cleatPointerThumbEvent,
|
|
4140
|
+
lostpointercapture: $xeTree.cleatPointerThumbEvent
|
|
4141
|
+
}
|
|
4142
|
+
})]), scrollYVisible === false ? (0, _ui.renderEmptyElement)($xeTree) : h('div', {
|
|
4143
|
+
ref: 'refTrackYElem',
|
|
4144
|
+
class: 'vxe-scrollbar--track-y',
|
|
4145
|
+
on: {
|
|
4146
|
+
click: $xeTree.clickTrackYEvent
|
|
4147
|
+
}
|
|
4148
|
+
}, [h('div', {
|
|
4149
|
+
ref: 'refThumbYElem',
|
|
4150
|
+
class: 'vxe-scrollbar--thumb-y',
|
|
4151
|
+
on: {
|
|
4152
|
+
pointerdown: $xeTree.pointerdownThumbYEvent,
|
|
4153
|
+
pointermove: $xeTree.pointermoveThumbYEvent,
|
|
4154
|
+
pointerup: $xeTree.cleatPointerThumbEvent,
|
|
4155
|
+
pointercancel: $xeTree.cleatPointerThumbEvent,
|
|
4156
|
+
lostpointercapture: $xeTree.cleatPointerThumbEvent
|
|
4157
|
+
}
|
|
4158
|
+
})])]) : (0, _ui.renderEmptyElement)($xeTree),
|
|
3819
4159
|
/**
|
|
3820
4160
|
* 拖拽提示
|
|
3821
4161
|
*/
|
|
@@ -3905,19 +4245,45 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
3905
4245
|
},
|
|
3906
4246
|
height: function height() {
|
|
3907
4247
|
var $xeTree = this;
|
|
3908
|
-
$xeTree.
|
|
4248
|
+
$xeTree.reFlag++;
|
|
3909
4249
|
},
|
|
3910
4250
|
minHeight: function minHeight() {
|
|
3911
4251
|
var $xeTree = this;
|
|
3912
|
-
$xeTree.
|
|
4252
|
+
$xeTree.reFlag++;
|
|
3913
4253
|
},
|
|
3914
4254
|
maxHeight: function maxHeight() {
|
|
3915
4255
|
var $xeTree = this;
|
|
3916
|
-
$xeTree.
|
|
4256
|
+
$xeTree.reFlag++;
|
|
4257
|
+
},
|
|
4258
|
+
useScrollbar: function useScrollbar() {
|
|
4259
|
+
var $xeTree = this;
|
|
4260
|
+
$xeTree.reFlag++;
|
|
4261
|
+
},
|
|
4262
|
+
computeScrollYWidth: function computeScrollYWidth() {
|
|
4263
|
+
var $xeTree = this;
|
|
4264
|
+
$xeTree.reFlag++;
|
|
4265
|
+
},
|
|
4266
|
+
computeScrollXHeight: function computeScrollXHeight() {
|
|
4267
|
+
var $xeTree = this;
|
|
4268
|
+
$xeTree.reFlag++;
|
|
4269
|
+
},
|
|
4270
|
+
computeScrollXVisible: function computeScrollXVisible() {
|
|
4271
|
+
var $xeTree = this;
|
|
4272
|
+
$xeTree.$nextTick(function () {
|
|
4273
|
+
$xeTree.reFlag++;
|
|
4274
|
+
});
|
|
4275
|
+
},
|
|
4276
|
+
computeScrollYVisible: function computeScrollYVisible() {
|
|
4277
|
+
var $xeTree = this;
|
|
4278
|
+
$xeTree.$nextTick(function () {
|
|
4279
|
+
$xeTree.reFlag++;
|
|
4280
|
+
});
|
|
3917
4281
|
},
|
|
3918
|
-
|
|
4282
|
+
reFlag: function reFlag() {
|
|
3919
4283
|
var $xeTree = this;
|
|
3920
|
-
$xeTree.recalculate()
|
|
4284
|
+
$xeTree.recalculate().then(function () {
|
|
4285
|
+
$xeTree.recalculate();
|
|
4286
|
+
});
|
|
3921
4287
|
}
|
|
3922
4288
|
},
|
|
3923
4289
|
created: function created() {
|
|
@@ -3937,7 +4303,9 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
3937
4303
|
menuConfig = props.menuConfig,
|
|
3938
4304
|
showOverflow = props.showOverflow,
|
|
3939
4305
|
lazy = props.lazy,
|
|
3940
|
-
loadMethod = props.loadMethod
|
|
4306
|
+
loadMethod = props.loadMethod,
|
|
4307
|
+
autoResize = props.autoResize,
|
|
4308
|
+
useScrollbar = props.useScrollbar;
|
|
3941
4309
|
var dragOpts = $xeTree.computeDragOpts;
|
|
3942
4310
|
if (!showOverflow) {
|
|
3943
4311
|
errLog('vxe.error.errProp', ['show-overflow=false', 'show-overflow=true']);
|
|
@@ -3958,12 +4326,25 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
3958
4326
|
if (menuConfig && !VxeUIContextMenu) {
|
|
3959
4327
|
errLog('vxe.error.reqComp', ['vxe-context-menu']);
|
|
3960
4328
|
}
|
|
3961
|
-
|
|
3962
|
-
|
|
4329
|
+
var el = $xeTree.$refs.refElem;
|
|
4330
|
+
if (useScrollbar) {
|
|
4331
|
+
var viewInnerEl = $xeTree.$refs.refVirtualBody;
|
|
4332
|
+
var scrollObserver = _ui.globalResize.create(function () {
|
|
4333
|
+
$xeTree.updateScrollbar();
|
|
4334
|
+
});
|
|
4335
|
+
if (el) {
|
|
4336
|
+
scrollObserver.observe(el);
|
|
4337
|
+
}
|
|
4338
|
+
if (viewInnerEl) {
|
|
4339
|
+
scrollObserver.observe(viewInnerEl);
|
|
4340
|
+
}
|
|
4341
|
+
internalData.scrollObserver = scrollObserver;
|
|
4342
|
+
}
|
|
4343
|
+
if (autoResize) {
|
|
3963
4344
|
var parentEl = $xeTree.getParentElem();
|
|
3964
4345
|
var resizeObserver = _ui.globalResize.create(function () {
|
|
3965
4346
|
if (props.autoResize) {
|
|
3966
|
-
$xeTree.
|
|
4347
|
+
$xeTree.reFlag++;
|
|
3967
4348
|
}
|
|
3968
4349
|
});
|
|
3969
4350
|
if (el) {
|
|
@@ -3974,17 +4355,23 @@ var _default2 = exports.default = /* define-vxe-component start */(0, _comp.defi
|
|
|
3974
4355
|
}
|
|
3975
4356
|
internalData.resizeObserver = resizeObserver;
|
|
3976
4357
|
}
|
|
3977
|
-
$xeTree.
|
|
3978
|
-
_ui.globalEvents.on($xeTree, 'resize',
|
|
4358
|
+
$xeTree.reFlag++;
|
|
4359
|
+
_ui.globalEvents.on($xeTree, 'resize', function () {
|
|
4360
|
+
$xeTree.reFlag++;
|
|
4361
|
+
});
|
|
3979
4362
|
},
|
|
3980
4363
|
beforeDestroy: function beforeDestroy() {
|
|
3981
4364
|
var $xeTree = this;
|
|
3982
4365
|
var reactData = $xeTree.reactData;
|
|
3983
4366
|
var internalData = $xeTree.internalData;
|
|
3984
|
-
var
|
|
4367
|
+
var scrollObserver = internalData.scrollObserver,
|
|
4368
|
+
resizeObserver = internalData.resizeObserver;
|
|
3985
4369
|
if (resizeObserver) {
|
|
3986
4370
|
resizeObserver.disconnect();
|
|
3987
4371
|
}
|
|
4372
|
+
if (scrollObserver) {
|
|
4373
|
+
scrollObserver.disconnect();
|
|
4374
|
+
}
|
|
3988
4375
|
_ui.globalEvents.off($xeTree, 'resize');
|
|
3989
4376
|
_xeUtils.default.assign(reactData, createReactData());
|
|
3990
4377
|
_xeUtils.default.assign(internalData, createInternalData());
|