import { useState, useEffect } from "react"; import { useNavigate } from "react-router-dom"; import { getJobsList } from "@/services"; import { mapJobList } from "@/utils/dataMapper"; import JobList from "@/pages/CompanyJobsPage/components/JobList"; import "./index.css"; const CompanyJobsListPage = () => { const [jobs, setJobs] = useState([]); const [loading, setLoading] = useState(true); const [page, setPage] = useState(1); const [total, setTotal] = useState(0); const navigate = useNavigate(); useEffect(() => { fetchJobs(); }, [page]); const fetchJobs = async () => { try { setLoading(true); const response = await getJobsList({ page, pageSize: 20, isActive: true, }); const mappedJobs = mapJobList(response.data || response); setJobs(mappedJobs); setTotal(response.total || mappedJobs.length); } catch (error) { console.error("Failed to fetch jobs:", error); setJobs([]); } finally { setLoading(false); } }; if (loading && jobs.length === 0) { return (
加载中...