This commit is contained in:
2026-04-14 19:55:53 +08:00
4 changed files with 25 additions and 4 deletions

View File

@@ -59,7 +59,7 @@ import Chart from './taskChart.vue';
import { useClickOutside } from '@/utils/clickOutside';
const chartPopover = ref();
const { popoverVisible } = useClickOutside(chartPopover);
const { popoverVisible } = useClickOutside(chartPopover, { enableMouseMove: true });
const props = withDefaults(
defineProps<{

View File

@@ -315,6 +315,11 @@ watch(
.map((path) => path.split(','))
: [];
selected.value = pathsArray;
if (pathsArray.length === 0) {
options.value = [];
optionsKey.value = Date.now();
return;
}
if (pathsArray.length > 0 && pathsArray[0].length > 0) {
if (props.editable) {
await buildOptionsFromIds(pathsArray);

View File

@@ -506,6 +506,13 @@ watch(
prepareFromProps();
} else {
formData.value = {};
standard.value = null;
exceptionFile.value = null;
selectedFlowTemplate.value = null;
isAutoFilled.value = false;
autoFilledFields.value = [];
standardSceneChildren.value = [];
tabName.value = '基础信息';
}
}
);

View File

@@ -1,6 +1,11 @@
import { ref, onMounted, onBeforeUnmount } from 'vue';
export function useClickOutside(popoverRef: any) {
interface ClickOutsideOptions {
enableMouseMove?: boolean;
}
export function useClickOutside(popoverRef: any, options?: ClickOutsideOptions) {
const { enableMouseMove = false } = options || {};
const popoverVisible = ref(false);
let hideTimer: number | null = null;
@@ -72,13 +77,17 @@ export function useClickOutside(popoverRef: any) {
onMounted(() => {
document.addEventListener('click', handleClickOutside);
document.addEventListener('mousemove', handleMouseMove);
if (enableMouseMove) {
document.addEventListener('mousemove', handleMouseMove);
}
});
onBeforeUnmount(() => {
clearHideTimer();
document.removeEventListener('click', handleClickOutside);
document.removeEventListener('mousemove', handleMouseMove);
if (enableMouseMove) {
document.removeEventListener('mousemove', handleMouseMove);
}
});
return {