【发布时间】:2020-07-02 20:11:28
【问题描述】:
我正在使用来自material-ui 的MaterialTable,我遇到的问题是在我的手机尺寸中,我的表格中的数据往往会溢出。这在普通桌面模式下不是问题。我该如何解决这个问题。
<MaterialTable
className={classes.table}
title="Editable Example"
columns={state.columns}
data={state.data}
options={{
padding: "dense",
tableLayout: "fixed",
actionsColumnIndex: -1,
exportButton: true,
}}
editable={{
onRowAdd: (newData) =>
new Promise((resolve) => {
setTimeout(() => {
resolve();
setState((prevState) => {
const data = [...prevState.data];
data.push(newData);
return { ...prevState, data };
});
}, 600);
}),
onRowUpdate: (newData, oldData) =>
new Promise((resolve) => {
setTimeout(() => {
resolve();
if (oldData) {
setState((prevState) => {
const data = [...prevState.data];
data[data.indexOf(oldData)] = newData;
return { ...prevState, data };
});
}
}, 600);
}),
onRowDelete: (oldData) =>
new Promise((resolve) => {
setTimeout(() => {
resolve();
setState((prevState) => {
const data = [...prevState.data];
data.splice(data.indexOf(oldData), 1);
return { ...prevState, data };
});
}, 600);
}),
}}
/>
【问题讨论】:
-
要解决此问题,您可以设置文本样式,使其具有
overflow: none; text-overflow: ellipsis; white-space: nowrap。但我认为你的问题也是你在一个很小的移动屏幕上有 7 列。你的设计应该以一种可用的方式来适应移动用户,仅仅因为列可以压扁并不意味着它是实用的。
标签: reactjs material-ui material-table