Skip to content

Commit b0cb0da

Browse files
committed
feat(Data source ): data preview header does not wrap
1 parent 526ea02 commit b0cb0da

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

frontend/src/views/ds/DataTable.vue

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -208,6 +208,22 @@ const back = () => {
208208
emits('back')
209209
}
210210
211+
const renderHeader = ({ column }: any) => {
212+
//创建一个元素用于存放表头信息
213+
const span = document.createElement('span')
214+
// 将表头信息渲染到元素上
215+
span.innerText = column.label
216+
// 在界面中添加该元素
217+
document.body.appendChild(span)
218+
//获取该元素的宽度(包含内外边距等信息)
219+
const spanWidth = span.getBoundingClientRect().width + 20 //渲染后的 div 内左右 padding 都是 10,所以 +20
220+
//判断是否小于element的最小宽度,两者取最大值
221+
column.minWidth = column.minWidth > spanWidth ? column.minWidth : spanWidth
222+
// 计算完成后,删除该元素
223+
document.body.removeChild(span)
224+
return column.label
225+
}
226+
211227
const btnSelectClick = (val: any) => {
212228
btnSelect.value = val
213229
loading.value = true
@@ -417,6 +433,7 @@ const btnSelectClick = (val: any) => {
417433
:key="index"
418434
:prop="c"
419435
:label="c"
436+
:render-header="renderHeader"
420437
/>
421438
</el-table>
422439
</template>

0 commit comments

Comments
 (0)