feat: refactor code

This commit is contained in:
shinya
2025-06-29 20:36:03 +08:00
parent 0b0048209f
commit 5c8360d9dd
8 changed files with 40 additions and 95 deletions

View File

@@ -4,24 +4,12 @@ import { useSearchParams } from 'next/navigation';
import { Suspense } from 'react';
import { useEffect, useRef, useState } from 'react';
import { DoubanItem, DoubanResult } from '@/lib/types';
import DemoCard from '@/components/DemoCard';
import DoubanCardSkeleton from '@/components/DoubanCardSkeleton';
import PageLayout from '@/components/PageLayout';
// 定义豆瓣数据项类型
interface DoubanItem {
title: string;
poster: string;
rate?: string;
}
// 定义豆瓣响应类型
interface DoubanResponse {
code: number;
message: string;
list: DoubanItem[];
}
function DoubanPageClient() {
const searchParams = useSearchParams();
const [doubanData, setDoubanData] = useState<DoubanItem[]>([]);
@@ -65,7 +53,7 @@ function DoubanPageClient() {
throw new Error('获取豆瓣数据失败');
}
const data: DoubanResponse = await response.json();
const data: DoubanResult = await response.json();
if (data.code === 200) {
setDoubanData(data.list);
@@ -100,7 +88,7 @@ function DoubanPageClient() {
throw new Error('获取豆瓣数据失败');
}
const data: DoubanResponse = await response.json();
const data: DoubanResult = await response.json();
if (data.code === 200) {
setDoubanData((prev) => [...prev, ...data.list]);