11<template >
2- <el-dialog
3- v-model =" dialogVisible"
4- :title =" $t('views.document.tag.add')"
5- :before-close =" close"
6- >
2+ <el-dialog v-model =" dialogVisible" :title =" $t('views.document.tag.add')" :before-close =" close" >
73 <el-form
84 ref =" FormRef"
95 :model =" { tags }"
128 @submit.prevent
139 >
1410 <div class =" flex-between flex" v-for =" (tag, index) in tags" :key =" tag" >
15- <el-form-item :label =" index === 0? $t('views.document.tag.key') : ''"
16- :prop =" `tags.${index}.key`"
17- style =" width : 50% "
18- :rules =" { required: true, message: $t('views.document.tag.requiredMessage1'), trigger: 'blur' }" >
11+ <el-form-item
12+ :label =" index === 0 ? $t('views.document.tag.key') : ''"
13+ :prop =" `tags.${index}.key`"
14+ style =" width : 50% "
15+ :rules =" {
16+ required: true,
17+ message: $t('views.document.tag.requiredMessage1'),
18+ trigger: 'blur',
19+ }"
20+ >
1921 <el-select v-model =" tag.key" @change =" tagKeyChange(tag)" filterable >
20- <el-option v-for =" op in keyOptions" :key =" op" :value =" op.key"
21- :label =" op.key" ></el-option >
22+ <el-option
23+ v-for =" op in keyOptions"
24+ :key =" op"
25+ :value =" op.key"
26+ :label =" op.key"
27+ ></el-option >
2228 </el-select >
2329 </el-form-item >
24- <el-form-item :label =" index === 0? $t('views.document.tag.value') : ''"
25- :prop =" `tags.${index}.value`"
26- style =" width : 50% "
27- :rules =" { required: true, message: $t('views.document.tag.requiredMessage2'), trigger: 'blur' }" >
30+ <el-form-item
31+ :label =" index === 0 ? $t('views.document.tag.value') : ''"
32+ :prop =" `tags.${index}.value`"
33+ style =" width : 50% "
34+ :rules =" {
35+ required: true,
36+ message: $t('views.document.tag.requiredMessage2'),
37+ trigger: 'blur',
38+ }"
39+ >
2840 <el-select v-model =" tag.value" filterable >
29- <el-option v-for =" op in tag.valueOptions" :key =" op" :value =" op.id"
30- :label =" op.value" ></el-option >
41+ <el-option
42+ v-for =" op in tag.valueOptions"
43+ :key =" op"
44+ :value =" op.id"
45+ :label =" op.value"
46+ ></el-option >
3147 </el-select >
3248 </el-form-item >
3349 </div >
3450 </el-form >
3551
52+ <el-button link type =" primary" @click =" add" >
53+ <AppIcon iconName =" app-add-outlined" class =" mr-4" />
54+ {{ $t('common.add') }}
55+ </el-button >
3656
37- <div class =" mt-20" >
38- <el-button link type =" primary" @click =" add" >
39- <AppIcon iconName =" app-add-outlined" class =" mr-4" />
40- {{ $t('common.add') }}
41- </el-button >
42- </div >
4357 <template #footer >
4458 <div class =" dialog-footer" >
4559 <el-button @click =" close" >{{ $t('common.cancel') }}</el-button >
5064</template >
5165<script setup lang="ts">
5266import { ref } from ' vue'
53- import AppIcon from " @/components/app-icon/AppIcon.vue" ;
67+ import AppIcon from ' @/components/app-icon/AppIcon.vue'
5468
5569const emit = defineEmits ([' addTags' ])
5670const props = defineProps ({
5771 knowledgeTags: {
5872 type: Array ,
59- default : () => []
60- }
73+ default : () => [],
74+ },
6175})
6276
6377const FormRef = ref ()
@@ -78,7 +92,10 @@ function tagKeyChange(tag: any) {
7892const submit = () => {
7993 FormRef .value .validate ((valid : boolean ) => {
8094 if (! valid ) return
81- emit (' addTags' , tags .value .map (tag => tag .value ))
95+ emit (
96+ ' addTags' ,
97+ tags .value .map ((tag ) => tag .value ),
98+ )
8299 })
83100}
84101
@@ -92,6 +109,6 @@ const close = () => {
92109 dialogVisible .value = false
93110}
94111
95- defineExpose ({open , close })
112+ defineExpose ({ open , close })
96113 </script >
97114<style lang="scss" scoped></style >
0 commit comments