MaterialReactTable 行选中属性
时间: 2024-05-14 09:19:21 浏览: 1
MaterialReactTable 是一个 React 组件库,其中包含了表格组件,可以通过 `Table` 组件的 `onRowClick` 属性来实现行选中功能。具体实现方法如下:
1. 首先在组件中引入 `Table` 和 `TableBody` 组件:
```javascript
import Table from '@material-ui/core/Table';
import TableBody from '@material-ui/core/TableBody';
```
2. 在渲染表格时,在 `Table` 组件中添加 `onRowClick` 属性,并传入一个处理函数:
```javascript
<Table onRowClick={handleClick}>
...
</Table>
```
3. 实现 `handleClick` 函数来处理行选中逻辑。可以在该函数中将选中行的信息存储在组件的状态中,并在每一行的 `TableRow` 组件中添加相应的属性来标识当前行是否被选中。例如:
```javascript
const [selectedRow, setSelectedRow] = useState(null);
const handleClick = (event, rowData) => {
setSelectedRow(rowData);
};
...
<TableBody>
{rows.map((row) => (
<TableRow key={row.id} selected={selectedRow === row}>
<TableCell>{row.name}</TableCell>
<TableCell>{row.age}</TableCell>
<TableCell>{row.gender}</TableCell>
</TableRow>
))}
</TableBody>
```
这样,在用户点击某一行时,`handleClick` 函数会将该行数据存储在 `selectedRow` 状态中,同时在渲染表格时,会根据 `selectedRow` 的值来判断哪些行应该被标记为选中状态。