From a63543a5c793c8954fa2f9da0ee4fb215c62d8c2 Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期一, 20 五月 2024 10:26:46 +0800 Subject: [PATCH] !118 ♥️发布 5.2.0-BETA 公测版本 Merge pull request !118 from 疯狂的狮子Li/dev --- src/views/workflow/processDefinition/components/processPreview.vue | 45 +++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 45 insertions(+), 0 deletions(-) diff --git a/src/views/workflow/processDefinition/components/processPreview.vue b/src/views/workflow/processDefinition/components/processPreview.vue new file mode 100644 index 0000000..19a95df --- /dev/null +++ b/src/views/workflow/processDefinition/components/processPreview.vue @@ -0,0 +1,45 @@ +<template> + <el-dialog v-model="data.visible" title="棰勮" width="70%" append-to-body destroy-on-close> + <div v-if="data.type === 'bpmn' && data.xmlStr"> + <BpmnViewer ref="bpmnViewerRef"></BpmnViewer> + </div> + <div v-if="data.type === 'xml' && data.xmlStr"> + <highlightjs language="xml" :code="data.xmlStr" /> + </div> + <template #footer> + <span v-if="data.type === 'xml'" class="dialog-footer"> </span> + </template> + </el-dialog> +</template> + +<script setup lang="ts"> +import BpmnViewer from '@/components/BpmnView/index.vue'; + +const data = reactive({ + visible: false, + type: '', + xmlStr: '' +}); + +const bpmnViewerRef = ref<InstanceType<typeof BpmnViewer>>(); +type PreviewType = 'xml' | 'bpmn'; +//鎵撳紑 +const openDialog = (xmlStr: string, type: PreviewType) => { + data.visible = true; + data.xmlStr = xmlStr; + data.type = type; + /** 娴佺▼鍥� */ + if (type === 'bpmn') { + /** 蹇呴』鏀惧湪nextTick 鍚﹀垯绗竴娆℃墦寮�涓虹┖ */ + nextTick(() => { + bpmnViewerRef.value?.initXml(data.xmlStr); + }); + } +}; +/** + * 瀵瑰鏆撮湶瀛愮粍浠舵柟娉� + */ +defineExpose({ + openDialog +}); +</script> -- Gitblit v1.9.3