import React, { useEffect, useState } from 'react'; import { Model } from '../types/models'; import { modelApi } from '../services/modelApi'; import ModelCard from './ModelCard'; interface PopularModelsHomeProps {} const PopularModelsHome: React.FC = () => { const [models, setModels] = useState([]); const [loading, setLoading] = useState(true); const [error, setError] = useState(null); // 从后端 API 加载精选模型数据 useEffect(() => { const loadData = async () => { try { setLoading(true); setError(null); // 使用精选模型接口获取数据 const response = await modelApi.getFeaturedModels(3); const data = response.data.items || []; if (data.length === 0) { setError('未找到精选模型数据'); setLoading(false); return; } setModels(data); setLoading(false); } catch (err) { console.error('Failed to load featured models from API:', err); setError('加载精选模型数据失败: ' + (err instanceof Error ? err.message : '未知错误')); setLoading(false); } }; loadData(); }, []); return (
{loading && ( <> {[1, 2, 3].map((i) => (
))} )} {error && (

{error}

)} {!loading && !error && models.length === 0 && (
暂无精选模型
)} {!loading && !error && models.map((m) => ( ))}
); }; export default PopularModelsHome;