From 302858f921bed077ab54dd31102f086bfe1add3c Mon Sep 17 00:00:00 2001 From: haoxuan <haoxuan> Date: 星期三, 07 二月 2024 11:59:47 +0800 Subject: [PATCH] srm项目 系统参数设置的前端页面开发+增加相关路由+公共列表组件增加是否可以配置表头的逻辑 --- src/components/makepager/TableCommonView.vue | 80 +++++++++++++++++++++------------------ 1 files changed, 43 insertions(+), 37 deletions(-) diff --git a/src/components/makepager/TableCommonView.vue b/src/components/makepager/TableCommonView.vue index d037c30..5c97946 100644 --- a/src/components/makepager/TableCommonView.vue +++ b/src/components/makepager/TableCommonView.vue @@ -11,7 +11,7 @@ :lazy="tableList.lazy" size="mini" @selection-change="handleSelectionChange" - :header-cell-style="{ background: '#f1f3f8', color: '#000009' , 'font-size': '14px'}" + :header-cell-style="{ background: '#f1f3f8', color: '#000009', 'font-size': '14px' }" :highlight-current-row="tableList.highlight" :row-class-name="tableRowClassName" @row-click="tableRowClick" @@ -20,7 +20,8 @@ :tree-props="{ children: 'child', hasChildren: 'hasChildren' }" > <el-table-column align="center" v-if="tableList.selectBox" type="selection" width="40"> </el-table-column> - <el-table-column align="center" v-if="tableList.selectIndex" type="index" label="搴忓彿" width="50"> </el-table-column> + <el-table-column align="center" v-if="tableList.selectIndex" type="index" label="搴忓彿" width="50"> + </el-table-column> <template v-for="(item, i) in tableList.tableColumn"> <el-table-column align="center" @@ -37,19 +38,22 @@ <span v-if="item.price">{{ "锟�" + number_format(scope.row[item.prop], 2, ".", ",") }}</span> <div v-else-if="item.status" :class="scope.row.status">{{ scope.row[item.prop] }}</div> <span v-else-if="item.isTime">{{ - dateFormat("YYYY-mm-dd HH:MM:SS", scope.row[item.prop]) === "1900-01-01 00:06:26" - ? "--" - : dateFormat("YYYY-mm-dd HH:MM:SS", scope.row[item.prop]) - }}</span> - <span v-else-if="item.isClick && scope.row[item.prop]" class="sel-name" @click="selCommonClick(scope.row)">{{ - scope.row[item.prop] - }}</span> + dateFormat("YYYY-mm-dd HH:MM:SS", scope.row[item.prop]) === "1900-01-01 00:06:26" + ? "--" + : dateFormat("YYYY-mm-dd HH:MM:SS", scope.row[item.prop]) + }}</span> + <span + v-else-if="item.isClick && scope.row[item.prop]" + class="sel-name" + @click="selCommonClick(scope.row)" + >{{ scope.row[item.prop] }}</span + > <span v-else-if="item.isFirst">{{ scope.row[item.prop] ? "鏄�" : "鍚�" }}</span> <span - v-else-if="item.isCommonClick && scope.row[item.prop]" - class="sel-name" - @click="selCommonClick(scope.row)" - >{{ scope.row[item.prop] }}</span + v-else-if="item.isCommonClick && scope.row[item.prop]" + class="sel-name" + @click="selCommonClick(scope.row)" + >{{ scope.row[item.prop] }}</span > <div v-else-if="item.isProductName" class="product-view"> <ul v-if="scope.row.products && scope.row.products.length > 0"> @@ -102,16 +106,9 @@ </el-table> <div class="overSpread1" v-show="iscolopen" @click="onMaskClick"></div> <div class="styleBtn"> - <i @click="checkCol()" class="label">...</i> - <el-checkbox-group - v-model="showcol" - v-show="iscolopen" - class="checkbox-group" - @change="selectCheckBoxList" - > - <el-checkbox v-for="item in tableList.allcol" :label="item" :key="item" - >{{ item }} - </el-checkbox> + <i @click="checkCol()" v-if="colOpenShow" class="label">...</i> + <el-checkbox-group v-model="showcol" v-show="iscolopen" class="checkbox-group" @change="selectCheckBoxList"> + <el-checkbox v-for="item in tableList.allcol" :label="item" :key="item">{{ item }} </el-checkbox> </el-checkbox-group> </div> </div> @@ -155,32 +152,37 @@ default: () => { return {} } - } + }, + // 鏄惁鍙互閰嶇疆鍒楄〃 琛ㄥご + colOpenShow: { + type: Boolean, + default: true, + }, }, data() { return { iscolopen: false, - showcol:[] + showcol: [] } }, watch: { - 'tableList.showcol':{ - handler(newVal){ - this.showcol=newVal + "tableList.showcol": { + handler(newVal) { + this.showcol = newVal }, - immediate:true + immediate: true } }, computed: {}, methods: { onMaskClick() { - this.iscolopen = false; + this.iscolopen = false }, checkCol() { - this.iscolopen = !this.iscolopen; + this.iscolopen = !this.iscolopen }, selectCheckBoxList(val) { - this.$emit("selTableCol", val); + this.$emit("selTableCol", val) }, handleReserve(row) { return row._id ? row._id : row.id @@ -316,6 +318,10 @@ selCommonClick(row) { this.$emit("selCommonClick", row) }, + // 琛岀偣鍑� + tableRowClick(row, column, event) { + this.$emit("tableRowClick", row, column, event) + }, // 鍗曢�夎鐩稿叧 tableRowClassName({ row }) { if (Object.keys(this.selectClassRow).length > 0) { @@ -324,9 +330,6 @@ } } this.$emit("tableRowClassName", row) - }, - tableRowClick(row) { - this.$emit("tableRowClick", row) } } } @@ -398,10 +401,13 @@ text-align: center; } -::v-deep{ - .el-table .cell .el-button--text.el-button--small{ +::v-deep { + .el-table .cell .el-button--text.el-button--small { padding: 4px 0; } + .el-table .onSelect { + background: #ebf2ff; + } } .overSpread1 { -- Gitblit v1.8.0