作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我必须使用 exceljs
自动调整列宽.
我的 Excel 必须是动态的,并且仅在 Excel 中保存用户将在请求中提供的列。对于这种情况,我提供以下语法:
workSheet.getRow(1).values = dto.columns;
将列名保存在第一行,名称在
dto.columns
中提供.
for(let i=0; i <= dto.columns.length-1; i++) {
workSheet.columns = [
{key: dto.columns[i], width: Object.keys(dto.columns[i]).length}
]
}
但这并没有给我带来任何好处:
autosize
这个问题的作用?
最佳答案
您迭代单元格并以这种方式检查每个单元格的长度
worksheet.columns.forEach(function (column, i) {
var maxLength = 0;
column["eachCell"]({ includeEmpty: true }, function (cell) {
var columnLength = cell.value ? cell.value.toString().length : 10;
if (columnLength > maxLength ) {
maxLength = columnLength;
}
});
column.width = maxLength < 10 ? 10 : maxLength;
});
关于javascript - 如何在exceljs中自动调整列宽,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63189741/
我是一名优秀的程序员,十分优秀!