import { Pagination } from 'antd'; import axios from 'axios'; import dayjs from 'dayjs'; import { useEffect, useState } from 'react'; import { NavigateFunction, useNavigate } from "react-router-dom"; import './App.css'; import A from './Components/CustomA'; export default function App() { const navigate: NavigateFunction = useNavigate(); const [current, setCurrent] = useState(1); const [totalDataLength, setTotalDataLength] = useState(50) const [data, setData] = useState([[]]) const [showData, setShowData] = useState([]) function onChange(page: number): void { setCurrent(page); } function onClickPlay(data: any): void { navigate(`/play/${data.id}`); } function getList(): void { if (data[current]) { setShowData(data[current]) return; } const reqData = JSON.stringify({ "page": current }); const config = { method: 'post', maxBodyLength: Infinity, url: 'https://jianmiau.tk:21880/Badminton/gethistory', headers: { 'Content-Type': 'application/json' }, data: reqData }; axios.request(config) .then((response) => { setData((value: any[][]) => { value[current] = response.data; setShowData(response.data) return value; }); }) .catch((error) => { console.log(error); }); } function getListPage(): void { const config = { method: 'post', maxBodyLength: Infinity, url: 'https://jianmiau.tk:21880/Badminton/gethistorypage', headers: { 'Content-Type': 'application/json' }, }; axios.request(config) .then((response) => { setTotalDataLength(response.data[0].count); }) .catch((error) => { console.error(error); }); } useEffect(() => { document.title = "羽球團" getListPage(); }, []) useEffect(() => { getList(); }, [current]) return <> {showData.length ? <> {showData.map((value: any, idx: number) => { const score: number[] = JSON.parse(value.score); const team: string[] = JSON.parse(value.team); return })}
時間 分數 人員
{dayjs(value.time * 1000).format("YYYY-MM-DD HH:mm:ss")} {score[0]}:{score[1]} {team[0][0].padEnd(5, " ")}{team[0][1].padEnd(5, " ")} vs   {team[1][0].padEnd(5, " ")}{team[1][1]} onClickPlay(value)}>詳細
: <> } }