merge
This commit is contained in:
@@ -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<{
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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 = '基础信息';
|
||||
}
|
||||
}
|
||||
);
|
||||
|
||||
@@ -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 {
|
||||
|
||||
Reference in New Issue
Block a user