From b5710cb685a97ef7eb15e5207d47817569259e6f Mon Sep 17 00:00:00 2001 From: wangting <675591594@qq.com> Date: 星期四, 21 三月 2024 11:38:52 +0800 Subject: [PATCH] UI上下文展示引擎 --- Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue | 55 ++++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 38 insertions(+), 17 deletions(-) diff --git a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue index bb99f2b..60a97c6 100644 --- a/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue +++ b/Source/ProjectWeb/src/components/dynamic-components/dynamic-table.vue @@ -1,6 +1,7 @@ <template> <div class="UI-dynamic" :id="'UI-dynamic-'+areasName+componentVO.oid"> <avue-crud v-model="form" + ref="dataTable" :data="tableList" :option="option" :page.sync="page" @@ -45,11 +46,15 @@ paramVOS: { type: Object, default: {} - } + }, + isShow: { + //鎵�鍦ㄥ尯鍩熸槸鍚﹀凡鏄剧ず锛岄拡瀵箃ab鍜宑ollapse + type: Boolean, + default: true + }, }, data() { return { - clientHeight:0, parentHeight:'100%',//褰撳墠缁勪欢鏍硅妭鐐瑰厓绱犻珮搴� form: {}, formName: '', @@ -616,22 +621,20 @@ verify: "" }, ], - } - }, - computed: { - option() { - return { + option: { index: true, addBtn: false, editBtn: false, delBtn: false, - height: this.parentHeight, + height: '100%', calcHeight: 15, indexFixed: false, menuFixed: false, - column: this.updatedColumns, - }; - }, + column: [], + }, + } + }, + computed: { updatedColumns() { return this.componentVO.tableDefineVO.cols[0].map(item => { const typeValue = item.fieldType === 'text' || item.fieldType === 'combox' ? 'input' : item.fieldType; // 琛ㄥ崟Type绫诲瀷 @@ -649,18 +652,36 @@ }, }, watch:{ - clientHeight: { + parentHeight:{ handler(newval) { - if(newval>50){ - //鐖跺厓绱犻珮搴�-鎸夐挳楂樺害-鍒嗛〉楂樺害 - this.parentHeight=this.$el.clientHeight-this.$children[0].$children[1].$children[0].$el.clientHeight-this.$children[0].$children[2].$el.clientHeight-5; - console.log(this.parentHeight) + if(newval >50){ + this.option.height=newval; + //doLayout涓嶇敓鏁堬紝鎵嬪姩璁剧疆琛ㄦ牸楂樺害 + this.$children[0].$children[1].$children[1].$children[0].$el.style.height=newval+'px'; + /*this.$nextTick(() => { + if (this.$refs.dataTable && this.$refs.dataTable.doLayout) { + this.$refs.dataTable.doLayout(); + } + })*/ } } }, + isShow:{ + handler(newval) { + if(newval && this.$el.clientHeight>50) { + this.parentHeight = this.$el.clientHeight - this.$children[0].$children[1].$children[0].$el.clientHeight - this.$children[0].$children[2].$el.clientHeight - 5; + } + } + } + }, + created() { + this.option.column=this.updatedColumns; }, mounted() { - this.clientHeight=this.$el.clientHeight; + if(this.$el.clientHeight>50) { + //鐖跺厓绱犻珮搴�-鎸夐挳楂樺害-鍒嗛〉楂樺害 + this.parentHeight = this.$el.clientHeight - this.$children[0].$children[1].$children[0].$el.clientHeight - this.$children[0].$children[2].$el.clientHeight - 5; + } }, methods: { buttonClick(scope, item) { -- Gitblit v1.9.3