diff --git a/automation/web/src/views/scriptLibrary/form/editTag.vue b/automation/web/src/views/scriptLibrary/form/editTag.vue index f88588d72cd62cd91b5a148fac2707bada949d95..285ee13ad62a0296210531ffffe98c0ae432c9ef 100644 --- a/automation/web/src/views/scriptLibrary/form/editTag.vue +++ b/automation/web/src/views/scriptLibrary/form/editTag.vue @@ -22,6 +22,8 @@ import { ElMessage } from 'element-plus' const props = defineProps<{ scriptData: any }>() +const radioProps = { value: 'id', label: 'name' } + const emit = defineEmits<{ update: [] close: [] @@ -30,6 +32,37 @@ const emit = defineEmits<{ const checkedCities = ref('') const cities = ref([]) + +// 获取标签列表 +const getList = async () => { + try { + const res = await tagList() + if (res.data.code === 200 && res.data.data) { + cities.value = res.data.data + // 初始化已选标签 + initSelectedTags() + } + } catch (error) { + console.error('获取标签列表失败:', error) + } +} + +// 初始化已选标签 + const initSelectedTags = () => { + console.log('[ props.scriptData ] >', props.scriptData) + if (props.scriptData && props.scriptData.tag ) { + // 单选只取第一个标签的id + checkedCities.value = props.scriptData.tag.id + } + } + +// 监听脚本数据变化 +watch(() => props.scriptData, () => { + if (cities.value) { + initSelectedTags() + } +}, { deep: true }) + // 提交表单 const onSubmit = async() => { try { @@ -64,6 +97,9 @@ const onReset = () => { emit('close') } +onMounted(() => { + getList() +})