<el-table
height="100%"
:data="tableData"
border
style="width: 100%">
<el-table-column
show-overflow-tooltip
:width="setColumnWidth('日期')"
prop="date"
label="日期">
</el-table-column>
<el-table-column
:width="setColumnWidth('asdfghjkl')"
prop="name"
label="asdfghjkl">
</el-table-column>
<el-table-column
:width="setColumnWidth('!@#$%^&*()_!@#$%^&*()_')"
prop="address"
label="!@#$%^&*()_!@#$%^&*()_">
</el-table-column>
</el-table>
methods: {
setColumnWidth(str) {
let columnWidth = 0;
for (let char of str) {
if ((char >= 'A' && char <= 'Z') || (char >= 'a' && char <= 'z')) {
// 如果是英文字符,为字符分配10个单位宽度,单位宽度可根据字体大小调整
columnWidth += 10
} else if (char >= '\u4e00' && char <= '\u9fa5') {
// 如果是中文字符,为字符分配14个单位宽度,单位宽度可根据字体大小调整
columnWidth += 14
} else {
// 其他种类字符,为字符分配10个单位宽度,单位宽度可根据字体大小调整
columnWidth += 10
}
}
if (columnWidth < 120) {
// 设置最小宽度
columnWidth = 120
}
return columnWidth + 'px'
},
},