From 433b1a77b2774c031c7aee2d9874e3f7eaa91f02 Mon Sep 17 00:00:00 2001 From: danshihao Date: Tue, 21 Mar 2023 17:32:18 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90fix=2066426=E3=80=91JTable=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=E6=8B=96=E6=8B=BD=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- jero-web/src/components/jero/JTable.vue | 28 ++++++++----------- jero-web/src/components/jero/README_JTable.md | 3 ++ jero-web/src/views/demo/list/JTableList.vue | 3 ++ 3 files changed, 18 insertions(+), 16 deletions(-) diff --git a/jero-web/src/components/jero/JTable.vue b/jero-web/src/components/jero/JTable.vue index 8085b562..678a92b7 100644 --- a/jero-web/src/components/jero/JTable.vue +++ b/jero-web/src/components/jero/JTable.vue @@ -210,15 +210,18 @@ export default { // 更新父组件的数据,将排序后的进行渲染 this.$emit('update:columns', columns) // 按冻结顺序排序 - this.resultColumns = [...startArr.sort((a, b) => { - const freezeArr = this.settingColumnsObj.freeze - return freezeArr.indexOf(getKey(a)) - freezeArr.indexOf(getKey(b)) - }), ...midArr, ...endArr] + this.resultColumns = [ + ...startArr.sort((a, b) => { + const freezeArr = this.settingColumnsObj.freeze + return freezeArr.indexOf(getKey(a)) - freezeArr.indexOf(getKey(b)) + }), + ...midArr, + ...endArr + ] return this.resultColumns }, // 初始化表格拖拽 initDrag (columns) { - columns = cloneDeep(columns) // 没有边框就不能拖拽 if (!this.bordered) { return @@ -230,7 +233,7 @@ export default { // 第一步:列宽映射 const draggingMap = {} columns.forEach((col) => { - draggingMap[col.dataIndex || col.key] = col.width + draggingMap[getKey(col)] = col.width }) const draggingState = Vue.observable(draggingMap) // 第二步:表头渲染 @@ -239,15 +242,8 @@ export default { let thDom = null // 获取列的key值和特性 const { key, ...restProps } = props - // if (renderField.includes(key)) { - // return - // } - // renderField.push(key) - // 获取当前列 - // const col = tbCols.find((col) => { - // const k = col.dataIndex || col.key - // return k === key - // }) + // 获取最新列配置 + const columns = cloneDeep(this.columns) let col if (key === 'selection-column') { col = {} @@ -297,7 +293,7 @@ export default { > {children}