From 0b67fd879ccd4fb6319dc016babd3bb8ea79dff0 Mon Sep 17 00:00:00 2001 From: shikeying <pxzsky@163.com> Date: 星期二, 25 四月 2023 18:47:35 +0800 Subject: [PATCH] 修改列表组件,支持属性子属性 --- src/views/components/myTableV3.vue | 40 ++++++++++++++++++++++++++++++++-------- 1 files changed, 32 insertions(+), 8 deletions(-) diff --git a/src/views/components/myTableV3.vue b/src/views/components/myTableV3.vue index ec86898..6c38590 100644 --- a/src/views/components/myTableV3.vue +++ b/src/views/components/myTableV3.vue @@ -122,7 +122,8 @@ <template v-else> <!--鐐瑰嚮寮瑰嚭鍗曞厓鏍煎唴瀹�--> <el-popover placement="top-start" trigger="click" :content="getPopoverContent(scope.row, column)"> - <span slot="reference" class="content-text">{{ scope.row[column.field] }}</span> +<!-- <span slot="reference" class="content-text">{{ scope.row[column.field] }}</span>--> + <span slot="reference" class="content-text">{{ splitField(scope.row, column.field) }}</span> </el-popover> </template> </template> @@ -187,13 +188,14 @@ </template> <script> -import myButtonV2 from '@/views/components/myButtonV2' -import myButton from '@/views/components/myButton' -import mySwitch from './mySwitch' -import request from '@/utils/request' -import * as valid from '@/utils/validate' -import previewPicture from '@/views/components/previewPicture' -export default { + import myButtonV2 from '@/views/components/myButtonV2' + import myButton from '@/views/components/myButton' + import mySwitch from './mySwitch' + import request from '@/utils/request' + import * as valid from '@/utils/validate' + import previewPicture from '@/views/components/previewPicture' + + export default { components: { myButtonV2, myButton, mySwitch, previewPicture }, props: { table: { @@ -348,6 +350,28 @@ this.initTable() }, methods: { + /** + * 瑙e喅锛歠ield涓睘鎬у灞炴�х殑鎯呭喌銆�2023-04-25 + * @param row + * @param field + */ + splitField(row, field){ + if(field.indexOf('.') > -1){ + const arr = field.split('.'); + let fieldStr = ''; + for(let i=0, len=arr.length; i<len; i++){ + if(i == len - 1){ + fieldStr += arr[i]; + } else { + fieldStr += arr[i] + '.'; + } + } + return eval('row.' + fieldStr); + } else { + return row[field]; + } + }, + initTable() { if (this.table !== null) { Object.assign(this.myTable, this.table) -- Gitblit v1.9.1