|
@@ -1,32 +1,23 @@
|
|
|
<script setup>
|
|
|
import { Position, Handle } from "@vue-flow/core";
|
|
|
-// props were passed from the slot using `v-bind="customNodeProps"`
|
|
|
const props = defineProps(["data", "id"]);
|
|
|
const currentProcess = inject("currentProcess");
|
|
|
const selectStatus = ref(false);
|
|
|
-const selectNode = () => {
|
|
|
- if (currentProcess != null) {
|
|
|
- if (props.id == currentProcess.value.id) {
|
|
|
- selectStatus.value = true;
|
|
|
- } else {
|
|
|
- selectStatus.value = false;
|
|
|
- }
|
|
|
- } else {
|
|
|
- selectStatus.value = false;
|
|
|
+
|
|
|
+const getBorderClass = computed(() => {
|
|
|
+ let str = "borderBlack";
|
|
|
+ if (selectStatus.value) {
|
|
|
+ str = "borderBlue";
|
|
|
}
|
|
|
- console.log(selectStatus.value, "222");
|
|
|
-};
|
|
|
-watch(
|
|
|
- () => currentProcess.value.id,
|
|
|
- () => {
|
|
|
- selectNode();
|
|
|
- },
|
|
|
- { deep: true }
|
|
|
-);
|
|
|
+ return str;
|
|
|
+});
|
|
|
+watchEffect(() => {
|
|
|
+ selectStatus.value = props.id == currentProcess.value.id;
|
|
|
+});
|
|
|
</script>
|
|
|
|
|
|
<template>
|
|
|
- <div class="nodes" :style="{ borderColor: selectStatus ? 'blue' : 'balck' }">
|
|
|
+ <div class="nodes" :class="getBorderClass">
|
|
|
<Handle
|
|
|
:style="{
|
|
|
height: '13px',
|
|
@@ -73,4 +64,10 @@ watch(
|
|
|
justify-content: center;
|
|
|
border: 1px solid black;
|
|
|
}
|
|
|
+.borderBlack {
|
|
|
+ border-color: black;
|
|
|
+}
|
|
|
+.borderBlue {
|
|
|
+ border-color: blue;
|
|
|
+}
|
|
|
</style>
|