代码如下:
import React from "react"
import { useState } from "react";
import { Table, Space } from 'antd';
import 'antd/dist/antd.css'
function TableTest() {
const initData = [
{
id: '1',
name: 'John Brown',
age: 32,
},
{
id: '2',
name: 'Jim Green',
age: 42,
},
{
id: '3',
name: 'Joe Black',
age: 32,
},
];
let [data, setState] = useState(initData)
//删除
const deleteRow = (id: number): any => {
console.log(id);
const newData: any = data.filter((row: any) => {
return row.id !== id
}
)
setState(newData)
}
const clickHandler = (id: number) => {
const a: number = id
return (event: React.MouseEvent) => {
deleteRow(id);
event.preventDefault();
}
}
const columns = [
{
title: 'id',
dataIndex: 'id',
key: 'id',
},
{
title: 'name',
dataIndex: 'name',
key: 'name',
},
{
title: 'age',
dataIndex: 'age',
key: 'age',
},
{
title: 'action',
key: 'action',
render: (record: any) => (
<Space size="middle">
<a onClick={clickHandler(record.id)}>Delete</a>
</Space>
),
},
];
return (
<div>
<Table dataSource={data} columns={columns} />
</div>
)
}
export default TableTest;
例如,把第二项删除: