import { useEffect, useState } from 'react'; import { Card, Col, Row, Statistic, Table, Tag, Typography } from 'antd'; import { getStats } from '../../api'; export default function Stats() { const [data, setData] = useState> | null>(null); useEffect(() => { getStats().then(setData).catch(() => {}); }, []); if (!data) return 加载中…; return (
{Object.entries(data.by_scope).map(([scope, cnt]) => ( ))} {Object.keys(data.by_scope).length === 0 && ( 暂无数据 )} String(i)} pagination={{ pageSize: 10 }} columns={[ { title: 'Token', dataIndex: 'token_prefix', key: 'token_prefix' }, { title: '客户端', dataIndex: 'client_id', key: 'client_id' }, { title: '服务', dataIndex: 'service', key: 'service', render: (s: string) => (s ? {s} : '-'), }, { title: '调用时间', dataIndex: 'last_used_at', key: 'last_used_at', render: (t: string) => (t ? new Date(t).toLocaleString('zh-CN') : '-'), }, ]} /> ); }