import { useMemo, useState } from "react"; import { Button, Card, Drawer, Table } from "antd"; import type { BasePlayer } from "../types"; import User from "./User"; import BattleTable from "./BattleTable"; interface Props { index: number; players?: (BasePlayer & { id: string })[]; } export const GroupMember: React.FC = props => { const char = useMemo(() => { const baseCode = 'A'.charCodeAt(0); let idx = props.index; const times = Math.floor(idx / 26); const code = 'A'.repeat(times); const lastChar = baseCode + (idx % 26); return `${code}${String.fromCharCode(lastChar)}`; }, []); const [open, setOpen] = useState(false); return ( setOpen(true)}>查看对战表} > `${e.id}-${e.name}-${e.score}`} showHeader={false} pagination={false} dataSource={props.players} columns={[ { dataIndex: '_', render: (_, __, i) => `(${i + 1})` }, { dataIndex: 'number' }, { dataIndex: 'name', render: (name, { uid }) => }, { dataIndex: 'score' }, ]} /> setOpen(false)} size={'80vh'} placement="bottom" > ); }