工作流 上下文参数使用++

This commit is contained in:
zhuangdashia 2025-06-25 14:15:13 +08:00
parent 948f2ea5ae
commit 56ac06f47d

View File

@ -1,4 +1,11 @@
<script setup lang="ts">
import {fetchGetSystemVarList} from "@/service/api/system-variable";
import { onMounted, ref, computed} from 'vue'
onMounted(() => {
getSystemVariables();
});
const content = defineModel<{ key: string; value: string | number | boolean; type: string }[]>('value', {
required: true,
default: () => []
@ -25,6 +32,34 @@ const dynamicInputRule = [
}
}
];
const inputValue = ref('');
const syncOptions = ref([
{
label: String,
value: String
}
]);
const getSystemVariables = async () =>{
const { error,data } = await fetchGetSystemVarList();
if (!error) {
syncOptions.value = data.map(item => ({
label: item.variableName,
value: item.variableKey.replace("$",'')
}));
}
console.log("syncOptions"+syncOptions.value[0].value)
console.log("syncOptions"+syncOptions.value[0].label)
};
const filteredOptions = computed(() => {
return inputValue.value
? syncOptions.value.filter(opt =>
opt.label.includes(inputValue.value) ||
opt.value.includes(inputValue.value))
: syncOptions.value
});
const typeOptions = [
{
@ -87,12 +122,33 @@ const handleUpdateType = (index: number) => {
:rule="dynamicInputRule"
:path="`${path}[${index}].value`"
>
<NInput
<!-- <NInput-->
<!-- v-if="content[index].type === 'string'"-->
<!-- v-model:value="content[index].value as string"-->
<!-- placeholder="value"-->
<!-- @keydown.enter.prevent-->
<!-- />-->
<n-mention
v-if="content[index].type === 'string'"
v-model:value="content[index].value as string"
placeholder="value"
:options="syncOptions"
default-value="@"
:prefix="['$']"
@keydown.enter.prevent
/>
<NPopover trigger="hover"
v-if="content[index].type === 'string'"
>
<template #trigger>
<NButton text>
<SvgIcon icon="ant-design:info-circle-outlined" class="text-18px color-blue" />
</NButton>
</template>
输入$提示变量信息
</NPopover>
<NInputNumber
v-if="content[index].type === 'number'"
v-model:value="content[index].value as number"