all
This commit is contained in:
@@ -90,7 +90,9 @@ const _sfc_main$1 = defineComponent({
|
||||
const innerVisible = ref(props.visible);
|
||||
const isExist = ref(props.visible);
|
||||
let scrollElements;
|
||||
const triggerMethods = computed(() => [].concat(props.trigger));
|
||||
const triggerMethods = computed(
|
||||
() => [].concat(props.trigger)
|
||||
);
|
||||
const doShow = function() {
|
||||
if (!props.disabled) {
|
||||
if (!isExist.value) {
|
||||
@@ -112,7 +114,11 @@ const _sfc_main$1 = defineComponent({
|
||||
style.value = { top: -window.innerHeight + "px", left: 0 };
|
||||
};
|
||||
const calcPosistion = function() {
|
||||
postionFns[props.position] && (style.value = postionFns[props.position](triggerRefEl.value, popperRefEl.value, innnerPosition));
|
||||
postionFns[props.position] && (style.value = postionFns[props.position](
|
||||
triggerRefEl.value,
|
||||
popperRefEl.value,
|
||||
innnerPosition
|
||||
));
|
||||
};
|
||||
const updatePosistion = function() {
|
||||
if (innerVisible.value) {
|
||||
@@ -184,14 +190,18 @@ const _sfc_main$1 = defineComponent({
|
||||
updatePosistion();
|
||||
}
|
||||
}, 15);
|
||||
onClickOutside(triggerRefEl.value, (e) => {
|
||||
if (!innerVisible.value || triggerRefEl.value.contains(e.target) || popperRefEl.value.contains(e.target)) {
|
||||
return;
|
||||
onClickOutside(
|
||||
triggerRefEl.value,
|
||||
(e) => {
|
||||
if (!innerVisible.value || triggerRefEl.value.contains(e.target) || popperRefEl.value.contains(e.target)) {
|
||||
return;
|
||||
}
|
||||
doHidden();
|
||||
},
|
||||
{
|
||||
ignore: [popperRefEl.value]
|
||||
}
|
||||
doHidden();
|
||||
}, {
|
||||
ignore: [popperRefEl.value]
|
||||
});
|
||||
);
|
||||
useResizeObserver(triggerRefEl, () => {
|
||||
updatePosistion();
|
||||
});
|
||||
@@ -206,10 +216,16 @@ const _sfc_main$1 = defineComponent({
|
||||
popperObserver && popperObserver.stop();
|
||||
}
|
||||
});
|
||||
watch(() => props.visible, (isShow) => isShow ? doShow() : doHidden());
|
||||
watch(() => props.content, () => {
|
||||
updatePosistion();
|
||||
});
|
||||
watch(
|
||||
() => props.visible,
|
||||
(isShow) => isShow ? doShow() : doHidden()
|
||||
);
|
||||
watch(
|
||||
() => props.content,
|
||||
() => {
|
||||
updatePosistion();
|
||||
}
|
||||
);
|
||||
const isScrollElement = function(element) {
|
||||
return element.scrollHeight > element.offsetHeight || element.scrollWidth > element.offsetWidth;
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user