import React from "react"; import { useState } from "react"; import { useEffect } from "react"; import ReactPaginate from "react-paginate"; import AllTaskTableItem from "./AllTaskTableItem/AllTaskTableItem"; import "./allTaskTableTracker.scss"; const AllTaskTableTracker = ({ filteredAllTasks, projects, loader }) => { const [items, setItems] = useState([]); const itemsPerPage = 10; const [currentItems, setCurrentItems] = useState([]); const [pageCount, setPageCount] = useState(0); const [itemOffset, setItemOffset] = useState(0); useEffect(() => { setItems(filteredAllTasks); const endOffset = itemOffset + itemsPerPage; setCurrentItems(filteredAllTasks?.slice(itemOffset, endOffset)); setPageCount(Math.ceil(filteredAllTasks?.length / itemsPerPage)); }, [filteredAllTasks]); useEffect(() => { const endOffset = itemOffset + itemsPerPage; setCurrentItems(items.slice(itemOffset, endOffset)); setPageCount(Math.ceil(items.length / itemsPerPage)); }, [itemOffset, itemsPerPage]); const handlePageClick = (event) => { const newOffset = (event.selected * itemsPerPage) % items.length; setItemOffset(newOffset); }; return ( <> {!loader && ( <> {Boolean(currentItems.length) && currentItems.map((task, index) => { return ( ); })} )}
Задача Статус Потраченное время Дата начала Дедлайн
{currentItems.length < itemsPerPage ? ( "" ) : ( )} ); }; export default AllTaskTableTracker;