import { FC, useMemo } from 'react'; import { Table, TableHeader, TableColumn, TableBody, TableRow, TableCell, getKeyValue, Button, Spinner, Link, } from '@nextui-org/react'; import { trpc } from '@web/utils/trpc'; import dayjs from 'dayjs'; import { useParams } from 'react-router-dom'; const ArticleList: FC = () => { const { id } = useParams(); const mpId = id || ''; const { data, fetchNextPage, isLoading, hasNextPage } = trpc.article.list.useInfiniteQuery( { limit: 20, mpId: mpId, }, { getNextPageParam: (lastPage) => lastPage.nextCursor, }, ); const items = useMemo(() => { const items = data ? data.pages.reduce((acc, page) => [...acc, ...page.items], [] as any[]) : []; return items; }, [data]); return (
) : null } > 标题 发布时间 } > {(item) => ( {(columnKey) => { let value = getKeyValue(item, columnKey); if (columnKey === 'publishTime') { value = dayjs(value * 1e3).format('YYYY-MM-DD HH:mm:ss'); return {value}; } if (columnKey === 'title') { return ( {value} ); } return {value}; }} )}
); }; export default ArticleList;