From 5ccf3b19b39f00b6e71836238c7c91634cdc23c0 Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期三, 06 三月 2024 16:35:27 +0800 Subject: [PATCH] 更新value-table列表点击功能 --- src/components/tool/value-table.vue | 33 +++++++++++++++++++-------------- 1 files changed, 19 insertions(+), 14 deletions(-) diff --git a/src/components/tool/value-table.vue b/src/components/tool/value-table.vue index 648a160..011aa1c 100644 --- a/src/components/tool/value-table.vue +++ b/src/components/tool/value-table.vue @@ -31,7 +31,7 @@ justify-content: center; } - .body{ + .body { overflow-x: hidden; } </style> @@ -51,10 +51,10 @@ <el-table ref="eltable" :data="tableData" style="width: 100%;" height="100%" tooltip-effect="dark" border @selection-change="selectChange" @select="select" v-loading="loading" @sort-change="sortChange" @row-click="rowClick" :show-summary="data.countFleid!=undefined && data.countFleid.length > 0" - :summary-method="getSummaries"> - <el-table-column type="selection" width="65" v-if="data.showSelect"> + :summary-method="getSummaries" :key="Math.random()"> + <el-table-column type="selection" width="65" v-if="data.showSelect" :key="Math.random()"> </el-table-column> - <el-table-column align="center" type="index" label="搴忓彿" width="70" v-if="data.isIndex"> + <el-table-column type="index" align="center" label="搴忓彿" width="70" v-if="data.isIndex" :key="Math.random()"> </el-table-column> <el-table-column :prop="a.label" :label="a.value" sortable="custom" v-for="(a, ai) in tableHead" :key="ai" show-overflow-tooltip min-width="160"> @@ -63,10 +63,12 @@ <el-tag v-for="(b, bi) in data.tagField[a.label].select" :key="bi" v-if="b.value == scope.row[a.label]" :type="b.type" size="medium">{{b.label}}</el-tag> </div> + <!-- 鍙搷浣滆杩涜鐐瑰嚮浜嬩欢 --> + <span v-else-if="data.linkEvent&&showLink(a.label, data.linkEvent)" style="color:#409EFF;cursor: pointer;" @click="$emit(showLink(a.label, data.linkEvent),scope.row)">{{scope.row[a.label]}}</span> <span v-else>{{scope.row[a.label]}}</span> </template> </el-table-column> - <el-table-column fixed="right" align="center" label="鎿嶄綔" :width="50 + data.do.length * 30" + <el-table-column fixed="right" align="center" label="鎿嶄綔" :width="60 + data.do.length * 40" v-if="data.do.length > 0"> <template slot-scope="scope"> <el-button v-for="(a, ai) in data.do" :key="ai" :type="a.type" @@ -92,7 +94,7 @@ <el-input v-model="upData[a.label]" size="small" clearable :placeholder="`璇疯緭鍏�${a.value}`" v-if="showType(a.label, data.selectField) == null" :disabled="isDisabled(a.label)"></el-input> <el-select v-model="upData[a.label]" size="small" v-if="showType(a.label, data.selectField) != null" - style="width: 100%;" :disabled="isDisabled(a.label)"> + style="width: 100%;" :disabled="isDisabled(a.label)" clearable> <el-option v-for="(b, bi) in data.selectField[a.label].select" :key="bi" :value="b.value" :label="b.label"></el-option> </el-select> @@ -108,7 +110,7 @@ <el-input v-model="upData[a.label]" size="small" clearable :placeholder="`璇疯緭鍏�${a.value}`" v-if="showType(a.label, data.selectField) == null" :disabled="isDisabled(a.label)"></el-input> <el-select v-model="upData[a.label]" size="small" v-if="showType(a.label, data.selectField) != null" - style="width: 100%;" :disabled="isDisabled(a.label)"> + style="width: 100%;" :disabled="isDisabled(a.label)" clearable> <el-option v-for="(b, bi) in data.selectField[a.label].select" :key="bi" :value="b.value" :label="b.label"></el-option> </el-select> @@ -132,7 +134,7 @@ <el-input v-model="upData[a.label]" size="small" clearable :placeholder="`璇疯緭鍏�${a.value}`" v-if="showType(a.label, data.selectField) == null"></el-input> <el-select v-model="upData[a.label]" size="small" v-if="showType(a.label, data.selectField) != null" - style="width: 100%;" :placeholder="`璇烽�夋嫨${a.value}`"> + style="width: 100%;" :placeholder="`璇烽�夋嫨${a.value}`" clearable> <el-option v-for="(b, bi) in data.selectField[a.label].select" :key="bi" :value="b.value" :label="b.label"></el-option> </el-select> @@ -147,7 +149,7 @@ <el-input v-model="upData[a.label]" size="small" clearable :placeholder="`璇疯緭鍏�${a.value}`" v-if="showType(a.label, data.selectField) == null"></el-input> <el-select v-model="upData[a.label]" size="small" v-if="showType(a.label, data.selectField) != null" - style="width: 100%;" :placeholder="`璇烽�夋嫨${a.value}`"> + style="width: 100%;" :placeholder="`璇烽�夋嫨${a.value}`" clearable> <el-option v-for="(b, bi) in data.selectField[a.label].select" :key="bi" :value="b.value" :label="b.label"></el-option> </el-select> @@ -223,8 +225,8 @@ order: 'asc' } }, - isIndex: true, - showSelect: true, + isIndex: false, + showSelect: false, select: true, row: 1, do: [{ @@ -264,8 +266,8 @@ order: 'asc' } }, - isIndex: true, - showSelect: true, + isIndex: false, + showSelect: false, select: true, row: 1, do: [{ @@ -388,6 +390,10 @@ var str = ob[val] return str == undefined ? null : ob[val].select }, + showLink(val, ob){ + var str = ob[val] + return str == undefined ? null : ob[val].method + }, showAddReq(label) { if (this.data.requiredAdd == undefined) { return @@ -504,7 +510,6 @@ }) }, openAddDia(addUrl) { - console.log(addUrl); this.addDia = true this.addUrl = addUrl this.upData = {} -- Gitblit v1.9.3