import React, { useState } from 'react'; import { message } from 'antd'; import ProForm, { ProFormText } from '@ant-design/pro-form'; import type { ProColumns } from '@ant-design/pro-table'; import { EditableProTable } from '@ant-design/pro-table'; const waitTime = (time: number = 100) => { return new Promise((resolve) => { setTimeout(() => { resolve(true); }, time); }); }; type DataSourceType = { id: React.Key; title?: string; decs?: string; state?: string; created_at?: string; children?: DataSourceType[]; }; const defaultData: DataSourceType[] = [ { id: 624748504, title: '活动名称一', decs: '这个活动真好玩', state: 'open', created_at: '2020-05-26T09:42:56Z', }, { id: 624691229, title: '活动名称二', decs: '这个活动真好玩', state: 'closed', created_at: '2020-05-26T08:19:22Z', }, ]; const columns: ProColumns[] = [ { title: '活动名称', dataIndex: 'title', width: '30%', }, { title: '状态', key: 'state', dataIndex: 'state', valueType: 'select', valueEnum: { all: { text: '全部', status: 'Default' }, open: { text: '未解决', status: 'Error', }, closed: { text: '已解决', status: 'Success', }, }, }, { title: '描述', dataIndex: 'decs', }, { title: '操作', valueType: 'option', }, ]; export default () => { const [editableKeys, setEditableRowKeys] = useState(() => defaultData.map((item) => item.id), ); return ( onFinish={async (values) => { await waitTime(2000); console.log(values); message.success('提交成功'); }} initialValues={{ name: '蚂蚁设计有限公司', useMode: 'chapter', }} > rowKey="id" toolBarRender={false} columns={columns} recordCreatorProps={{ newRecordType: 'dataSource', position: 'top', record: () => ({ id: Date.now(), }), }} editable={{ type: 'multiple', editableKeys, onChange: setEditableRowKeys, actionRender: (row, _, dom) => { return [dom.delete]; }, }} /> ); };