From 1772fc5e211f9e9e0ab4cdc6c29b436aac178c2a Mon Sep 17 00:00:00 2001 From: jinlin <jinlin> Date: 星期五, 23 二月 2024 12:19:55 +0800 Subject: [PATCH] 修改 --- web/packages/components/zt-dict/src/zt-dict.vue | 29 +++++++++++++++++++++++++---- 1 files changed, 25 insertions(+), 4 deletions(-) diff --git a/web/packages/components/zt-dict/src/zt-dict.vue b/web/packages/components/zt-dict/src/zt-dict.vue index 4fc8f12..e943ef1 100644 --- a/web/packages/components/zt-dict/src/zt-dict.vue +++ b/web/packages/components/zt-dict/src/zt-dict.vue @@ -3,9 +3,12 @@ <el-select :value="dictValue" @change="changeProjectMajor" @input="$emit('input', $event)" :placeholder="placeholder" clearable style="width: 100%;" v-if="showType === 'select'" :disabled="disabled"> <el-option :label="data.dictLabel" v-for="data in dicts" :key="data.dictValue" :value ="data.dictValue">{{data.dictLabel}}</el-option> </el-select> - <el-radio-group :value="dictValue" @input="$emit('input', $event)" v-if="showType === 'radio'" :disabled="disabled"> - <el-radio :label="data.dictValue" v-for="data in dicts" :key="data.dictValue">{{data.dictLabel}}</el-radio> - </el-radio-group> + <div v-if="showType === 'radio'"> + <el-radio-group :value="dictValue" @input="$emit('input', $event)" :disabled="disabled"> + <el-radio :label="data.dictValue" v-for="data in dicts" :key="data.dictValue">{{data.dictLabel}}</el-radio> + <el-input class="radio-input" v-if="isOtherOptionSelected" v-model="inputName"></el-input> + </el-radio-group> + </div> <zt-combo-tree v-model="dictValue" :datas="dictTrees" :disabled-filter="disabledFilter" @input="$emit('input', $event)" v-if="showType === 'tree'" :placeholder="placeholder"/> </div> </template> @@ -15,6 +18,8 @@ export default { name: 'ZtDict', props: { + inputName:{}, + origin:{}, // 瀛楀吀瀛楁 value: [Number, String, Boolean], dict: { // 瀛楀吀绫诲瀷 type: String, @@ -42,7 +47,8 @@ }, data() { return { - dictValue: typeof this.value === 'undefined' ? '' : (this.value + '') + dictValue: typeof this.value === 'undefined' ? '' : (this.value + ''), + isName:false, } }, computed: { @@ -58,6 +64,10 @@ this.wrapTreeId(datas) return datas }, + isOtherOptionSelected() { + const selectedOption = this.dicts.find(data => data.dictValue === this.dictValue); + return selectedOption && selectedOption.dictLabel.includes('鍏朵粬'); + }, dicts: function () { let dicts = this.$store.getters.getDict(this.dict) if (this.excluded.length > 0) { @@ -72,6 +82,9 @@ watch: { value(val, oldval) { this.dictValue = typeof val === 'undefined' ? '' : (val + '') + }, + inputName(){ + this.$emit('getChangeInputData',this.inputName,this.origin) } }, methods: { @@ -117,5 +130,13 @@ background-color: #00a06e !important; border-color: #1890ff !important; } + .radio-input.el-input{ + position: absolute; + bottom: 5px; + left: 68px; + } + .radio-input.el-input>.el-input__inner{ + height: 25px; + } </style> -- Gitblit v1.9.1