reactjs - 更改 React 材料表中的 addNewRow 图标位置
问题描述
我将 onRowAdd 处理程序放在材料表组件的可编辑选项中,以获得添加新行的能力。一切正常,但我不知道如何更改 RowAdd 按钮的默认位置(通常,就在搜索字段之后)。在我的示例中,我希望在行内看到这个按钮,用于过滤字段(由 options.filtering.true 添加的行)。可能吗?如何更改此按钮的默认位置?我的组件的源代码:
import React from 'react';
import MaterialTable from 'material-table';
export default function MyTable2() {
const [state, setState] = React.useState({
columns: [
{ title: 'Name', field: 'name' },
{ title: 'Surname', field: 'surname' },
{ title: 'Birth Year', field: 'birthYear', type: 'numeric' },
{
title: 'Birth Place',
field: 'birthCity',
lookup: { 34: 'İstanbul', 63: 'Şanlıurfa' },
},
],
data: [
{ name: 'Mehmet', surname: 'Baran', birthYear: 1987, birthCity: 63 },
{
name: 'Zerya Betül',
surname: 'Baran',
birthYear: 2017,
birthCity: 34,
},
],
});
return (
<MaterialTable
title="Editable Example"
columns={state.columns}
data={state.data}
options={{
filtering: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);
})
}}
/>
);
}
解决方案
推荐阅读
- javascript - Vue:将焦点设置到动态输入框
- .net-core - Net Core Worker Windows 服务中的 EF Core DBContext
- google-cloud-platform - 使用 Bind9 在 Google Cloud Platform 中创建 DNS 转发
- html - 带有 html 重定向的简单身份验证页面
- reactjs - 使用 react Hook,在 useCallback 的情况下显示缺少依赖项
- mysql - kubectl 无法访问 pod 应用程序
- java - 用户输入值的总和问题
- oracle-adf - EBS 仅将 GUEST 用户信息传递给 ADF 表单
- node.js - 使用 node express 从 mongodb 检索数据
- machine-learning - 机器学习和线性回归预测误差