сделал разбиение ленты выдачи линз на страницы

This commit is contained in:
Андрей Дувакин 2025-03-10 18:08:51 +05:00
parent 744a5402a0
commit 56fc3d0de2

View File

@ -10,7 +10,7 @@ import {
Button, Button,
FloatButton, FloatButton,
Typography, Typography,
Timeline, Grid Timeline, Grid, Pagination
} from "antd"; } from "antd";
import getAllLensIssues from "../api/lens_issues/GetAllLensIssues.jsx"; import getAllLensIssues from "../api/lens_issues/GetAllLensIssues.jsx";
import {useEffect, useState} from "react"; import {useEffect, useState} from "react";
@ -39,6 +39,9 @@ const IssuesPage = () => {
const [currentPage, setCurrentPage] = useState(1); const [currentPage, setCurrentPage] = useState(1);
const [pageSize, setPageSize] = useState(10); const [pageSize, setPageSize] = useState(10);
const [timelinePage, setTimelinePage] = useState(1);
const [timeLinePageSize, setTimeLinePageSize] = useState(10);
const [startFilterDate, setStartFilterDate] = useState(null); const [startFilterDate, setStartFilterDate] = useState(null);
const [endFilterDate, setEndFilterDate] = useState(null); const [endFilterDate, setEndFilterDate] = useState(null);
@ -241,12 +244,38 @@ const IssuesPage = () => {
), ),
})); }));
const TimeLineView = () => ( const TimeLineView = () => {
<Timeline const paginatedItems = timeLineItems.slice(
items={timeLineItems} (timelinePage - 1) * timeLinePageSize,
mode={screens.xs ? "left" : "right"} timelinePage * timeLinePageSize
/> );
);
return (
<>
<Timeline
items={paginatedItems}
mode={screens.xs ? "left" : "right"}
/>
<Row
style={{textAlign: "center", marginTop: 20}}
align={"middle"}
justify={"end"}
>
<Pagination
current={timelinePage}
pageSize={timeLinePageSize}
total={timeLineItems.length}
onChange={(page, newPageSize) => {
setTimelinePage(page);
setTimeLinePageSize(newPageSize);
}}
showSizeChanger={true}
pageSizeOptions={["5", "10", "20", "50"]}
/>
</Row>
</>
);
};
return ( return (
<div style={{padding: 20}}> <div style={{padding: 20}}>