import React, { useContext } from 'react'; import StandardTable, { StandardTableProps, StandardTableColumnProps } from '../../components/StandardTable/index'; import { InternalCurdBox } from '../CurdBox'; import { addDivider } from '../../utils'; import DataContext from '../../DataContext'; type NoDataStandardTableProps = Omit, 'data'>; export interface CustomStandardTableProps extends NoDataStandardTableProps { columns: StandardTableColumnProps[]; renderActions?: InternalCurdBox['renderActions']; handleDataChange?: InternalCurdBox['handleDataChange']; } export default function CustomStandardTable(props: CustomStandardTableProps) { const { columns, renderActions, handleDataChange, ...rest } = props; const { data } = useContext(DataContext); const enhanceColumns = () => { if (!columns) return []; if (!renderActions) return columns; return [ ...columns, { title: '操作', render: (value, record: T) => { return addDivider(renderActions(record)); } }, ]; }; return ( ); }