mirror of
				https://gitee.com/hhyykk/ipms-sjy-ui.git
				synced 2025-10-31 10:18:43 +08:00 
			
		
		
		
	!155 fix: 处理 window.bpmnInstances 有时候为 undefined 问题
Merge pull request !155 from OlyLis/master
This commit is contained in:
		| @@ -113,18 +113,18 @@ const timer = ref() | ||||
| provide('prefix', props.prefix) | ||||
| provide('width', props.width) | ||||
| const bpmnInstances = () => (window as any)?.bpmnInstances | ||||
| const initModels = () => { | ||||
|   // console.log(props, 'props') | ||||
|   // console.log(props.bpmnModeler, 'sakdjjaskdsajdkasdjkadsjk') | ||||
|   // 初始化 modeler 以及其他 moddle | ||||
|   // nextTick(() => { | ||||
|   if (!props.bpmnModeler) { | ||||
|  | ||||
| // 监听 props.bpmnModeler 然后 initModels | ||||
| const unwatchBpmn = watch( | ||||
|   () => props.bpmnModeler, | ||||
|   () => { | ||||
|     // 避免加载时 流程图 并未加载完成 | ||||
|     timer.value = setTimeout(() => initModels(), 10) | ||||
|     return | ||||
|   } | ||||
|   if (timer.value) { | ||||
|     clearTimeout(timer.value) | ||||
|     if (!props.bpmnModeler) { | ||||
|       console.log('缺少props.bpmnModeler') | ||||
|       return | ||||
|     } | ||||
|  | ||||
|     console.log('props.bpmnModeler 有值了!!!') | ||||
|     const w = window as any | ||||
|     w.bpmnInstances = { | ||||
|       modeler: props.bpmnModeler, | ||||
| @@ -137,12 +137,16 @@ const initModels = () => { | ||||
|       replace: props.bpmnModeler.get('replace'), | ||||
|       selection: props.bpmnModeler.get('selection') | ||||
|     } | ||||
|   } | ||||
|  | ||||
|   console.log(bpmnInstances(), 'window.bpmnInstances') | ||||
|   getActiveElement() | ||||
|   // }) | ||||
| } | ||||
|     console.log(bpmnInstances(), 'window.bpmnInstances') | ||||
|     getActiveElement() | ||||
|     unwatchBpmn() | ||||
|   }, | ||||
|   { | ||||
|     immediate: true | ||||
|   } | ||||
| ) | ||||
|  | ||||
| const getActiveElement = () => { | ||||
|   // 初始第一个选中元素 bpmn:Process | ||||
|   initFormOnChanged(null) | ||||
| @@ -190,11 +194,7 @@ const initFormOnChanged = (element) => { | ||||
|   ) | ||||
|   formVisible.value = elementType.value === 'UserTask' || elementType.value === 'StartEvent' | ||||
| } | ||||
| onMounted(() => { | ||||
|   setTimeout(() => { | ||||
|     initModels() | ||||
|   }, 100) | ||||
| }) | ||||
|  | ||||
| onBeforeUnmount(() => { | ||||
|   const w = window as any | ||||
|   w.bpmnInstances = null | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 芋道源码
					芋道源码