|
|
@@ -9,7 +9,7 @@
|
|
|
</div>
|
|
|
<!-- body -->
|
|
|
<div class="ep-node-body" @click="showNodeDrawer">
|
|
|
- <component ref="node" :is="nodeComponents[props.node.nodeType]" :tempNodeId="tempNodeId" :node="props.node" />
|
|
|
+ <component ref="node" :is="nodeComponents[props.node.nodeType as keyof typeof nodeComponents]" :node="props.node" />
|
|
|
</div>
|
|
|
<!-- 校验错误提示 -->
|
|
|
<div class="ep-node-error-msg" v-if="isError">
|
|
|
@@ -22,16 +22,16 @@
|
|
|
<NodeAdd :node="props.node" />
|
|
|
|
|
|
<!-- 节点配置Drawer -->
|
|
|
- <BaseDrawer ref="nodeDrawer" @updateConfig="updateConfig" @cancelUpdateConfig="cancelUpdateConfig" />
|
|
|
+ <!-- <BaseDrawer ref="nodeDrawer" @updateConfig="updateConfig" @cancelUpdateConfig="cancelUpdateConfig" /> -->
|
|
|
+ <DrawerWrap ref="drawerWrap" />
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script setup lang="ts" name="BaseNode">
|
|
|
- import { ref, shallowRef, getCurrentInstance, watch, computed, onUnmounted, inject } from 'vue'
|
|
|
- import BaseDrawer from './BaseDrawer.vue'
|
|
|
+ import { ref, shallowRef, watch, computed, onUnmounted, inject } from 'vue'
|
|
|
+ import DrawerWrap from './drawer-wrap.vue'
|
|
|
import NodeAdd from './node_add.vue'
|
|
|
import { nodeConfigData, ProcessConstant } from '../../common/process.data'
|
|
|
- import { getUUID } from '../../common/common.util'
|
|
|
import { EasyProcess } from '../../common/process.type'
|
|
|
import { Validator } from '../../common/validator.util'
|
|
|
import { ProcessHelper } from '../../common/process.helper'
|
|
|
@@ -68,11 +68,11 @@
|
|
|
const errorTips = ref<boolean>(false)
|
|
|
const showErrorTips = (flag: boolean) => (errorTips.value = flag)
|
|
|
const errorMessage = computed<string>(() => {
|
|
|
- let result = validator?.getResult(tempNodeId)
|
|
|
+ let result = validator?.getResult(props.node.nodeId)
|
|
|
return result ? (result.message ?? '') : ''
|
|
|
})
|
|
|
const isError = computed<boolean>(() => {
|
|
|
- let result = validator?.getResult(tempNodeId)
|
|
|
+ let result = validator?.getResult(props.node.nodeId)
|
|
|
return result ? !result.valid : false
|
|
|
})
|
|
|
// ---------- 节点数据校验 --------- end
|
|
|
@@ -81,31 +81,18 @@
|
|
|
// 节点是否可以被移除
|
|
|
const canRemoved = computed(() => config.value.canRemoved)
|
|
|
|
|
|
- const { proxy } = getCurrentInstance()
|
|
|
-
|
|
|
- // 生成临时节点ID
|
|
|
- const tempNodeId = getUUID()
|
|
|
-
|
|
|
onUnmounted(async () => {
|
|
|
validator?.remove(props.node.nodeId)
|
|
|
validator?.validate()
|
|
|
})
|
|
|
|
|
|
// 显示节点配置组件
|
|
|
+ const drawerWrap = ref()
|
|
|
const showNodeDrawer = () => {
|
|
|
if (config.value.hasDrawer) {
|
|
|
- proxy.$refs.nodeDrawer.show(props.node)
|
|
|
+ drawerWrap.value.show(props.node)
|
|
|
}
|
|
|
}
|
|
|
-
|
|
|
- // 更新节点配置属性
|
|
|
- const updateConfig = (data: EasyProcess.NodeConfig) => {
|
|
|
- props.node = data
|
|
|
- validator?.validate()
|
|
|
- }
|
|
|
-
|
|
|
- // 取消更新节点配置属性
|
|
|
- const cancelUpdateConfig = () => validator?.validate()
|
|
|
</script>
|
|
|
|
|
|
<style lang="scss" scoped>
|