问题:
原本想通过设置width给表格列设置固定宽度:
const columns = [
{
title: "信息",
dataIndex: "info",
width: "200px"
}
];
但是就是不生效,一旦获取到数据了,列宽就变成了内容的长度。
本来以为是样式写错了,
后来经过反复试验,发现是因为中英文的问题。如果文本是中文,设置width就生效,如果内容是英文/数字,就会出现上述的情况。
可能是因为中英文字符的宽度计算方式不同。
解决方法:
使用"word-break: break-all;" 样式,可以强制换行并使得英文字母也能够适应指定的列宽。
代码如下:
const columns = [
{
title: "信息",
dataIndex: "info",
render:(text) => (
<div style={{ width:"200px", wordBreak:"break-all" }}>{text}</div>
)
}
];
成功~