From 22d4441a8c669185c13d2b6856c51ad550c50ae2 Mon Sep 17 00:00:00 2001 From: yangfeng <wanwan926_4@163.com> Date: 星期五, 14 七月 2023 18:26:47 +0800 Subject: [PATCH] 编辑下拉框&网络请求封装优化 --- src/components/makepager/TableCommonView.vue | 32 +++++++++++++++++++++++++------- 1 files changed, 25 insertions(+), 7 deletions(-) diff --git a/src/components/makepager/TableCommonView.vue b/src/components/makepager/TableCommonView.vue index ee1728d..af881ec 100644 --- a/src/components/makepager/TableCommonView.vue +++ b/src/components/makepager/TableCommonView.vue @@ -13,7 +13,8 @@ @selection-change="handleSelectionChange" :header-cell-style="{ background: '#ECF4FF', color: '#666' }" > - <el-table-column type="selection" width="40"> </el-table-column> + <el-table-column v-if="selectBox" type="selection" width="40"> </el-table-column> + <el-table-column v-for="(item, i) in tableList.tableColumn" :key="i" @@ -21,14 +22,19 @@ :label="item.label" :width="item.width" :min-width="item.min" - sortable + show-overflow-tooltip + :sortable="item.sortable" > <template slot-scope="scope"> <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>{{ scope.row[item.prop] }}</span> </template> </el-table-column> <slot name="tableButton" /> + <div slot="empty"> + <el-empty description="鏆傛棤鏁版嵁"></el-empty> + </div> </el-table> </div> </template> @@ -37,10 +43,16 @@ export default { name: "TableCommonView", props: { + selectBox: { + type: Boolean, + default: true + }, + tableList: { type: Object, default: () => { return { + selectBox: true, tableInfomation: [], // 鎺ュ彛杩斿洖鏁版嵁 tableColumn: [ // table琛ㄥ崟 @@ -93,30 +105,29 @@ getSummaries(param) { if (this.showSummary.show) { const { columns, data } = param - console.log(param) const sums = [] columns.forEach((column, index) => { if (index === this.showSummary.mergeNumber) { sums[index] = "鏈〉鎬昏" } const values = data.map((item) => Number(item[column.property])) - // if (column.property === this.showSummary.sumProp) { if (this.showSummary.sumProp.includes(column.property)) { sums[index + 1] = values.reduce((prev, curr) => { const value = Number(curr) if (!isNaN(value)) { - return this.number_format(prev + curr, 2, ".", ",") + return prev + curr } else { - return this.number_format(prev, 2, ".", ",") + return prev } }, 0) sums[index + 1] } }) + console.log(sums) return sums } }, - //瀹氫箟number_format鏂规硶 + // 鏁板瓧鎹㈣涓洪噾棰濇樉绀烘牸寮� number_format(number, decimals, dec_point, thousands_sep) { decimals = 2 //杩欓噷榛樿璁剧疆淇濈暀涓や綅灏忔暟锛屼篃鍙互娉ㄩ噴杩欏彞閲囩敤浼犲叆鐨勫弬鏁� /* @@ -154,6 +165,13 @@ margin-top: 20px; margin-right: 10px; margin-bottom: 40px; + .blue { + width: 70px; + text-align: center; + color: #fff; + background-color: $color-primary; + border-radius: 4px; + } } ::v-deep { .el-table__footer-wrapper tbody td.el-table__cell { -- Gitblit v1.8.0