"use client"; import React, { useEffect, useState } from "react"; import axios from "axios"; import { Pagination } from "swiper/modules"; import { Swiper, SwiperSlide } from "swiper/react"; import Image from "next/image"; export default function Team() { const [data, setData] = useState(null); const [loading, setLoading] = useState(true); const [error, setError] = useState(null); useEffect(() => { async function fetchData() { try { setLoading(true); const res = await axios.get("/api/get-component-data", { params: { component_name: "Team" }, }); setData(res.data.data); } catch (err) { setError("获取Team数据失败"); } finally { setLoading(false); } } fetchData(); }, []); if (loading) return
Loading...
; if (error) return null; if (!data) return null; // 标题 const title = data.title || ""; // items 子表 const items = data.items || []; const icon = data.icon || "/files/icon.svg"; const htmlCode = data.html_code || ""; return ( <>
{htmlCode ? (
) : ( icon )}

{title}

{/*/column */}
{/*/.row */}
{items.map((slide, idx) => (
image

{slide.item_title}

{slide.item_subtitle}

{slide.item_description}

{/* /.social */}
{/*/.card-body */}
{/* /.card */}
{/* /.item-inner */}
))} {/*/.swiper-wrapper */}
{/* /.swiper */}
{/* /.swiper-container */}
); }