From 8375c2d6e409c51a8d69044e97641dca461c36a8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com> Date: Fri, 11 Jul 2025 20:21:02 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=EF=BC=9A=E6=96=87=E7=AB=A0?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E6=94=AF=E6=8C=81=E5=88=86=E9=A1=B5=E5=8A=A0?= =?UTF-8?q?=E8=BD=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/expert/index.tsx | 47 +++++++++++++++++++++++++++++---------- src/honor/list.tsx | 53 +++++++++++++++++++++++++++++++------------- src/zzjy/index.tsx | 2 +- 3 files changed, 74 insertions(+), 28 deletions(-) diff --git a/src/expert/index.tsx b/src/expert/index.tsx index b035d36..6eebb1a 100644 --- a/src/expert/index.tsx +++ b/src/expert/index.tsx @@ -22,32 +22,55 @@ const Index = () => { const categoryId = Number(params.id); const reload = async () => { + console.log('初始化加载 - 分类ID:', categoryId); + // 重置状态 + setPage(1); + setList([]); + setHasMore(true); + // 当前栏目信息 const navs = await getCmsNavigation(categoryId); - // 当前栏目信息 if (navs) { setNavigation(navs); } - // 终极新闻列表 - getList() + + // 加载第一页数据 + getList(1); } // 终极新闻列表 - const getList = () => { - pageCmsArticle({categoryId, page}).then(res => { + const getList = (currentPage = page) => { + console.log('请求数据 - 页码:', currentPage, '分类ID:', categoryId); + pageCmsArticle({categoryId, page: currentPage}).then(res => { + console.log('获取到数据:', res); if (res?.list && res?.list.length > 0) { - const newList = list?.concat(res.list) - setList(newList); - setHasMore(true) + if (currentPage === 1) { + // 第一页,直接设置 + setList(res.list); + } else { + // 后续页面,追加到现有列表 + setList(prevList => { + const newList = [...prevList, ...res.list]; + console.log('合并后的列表长度:', newList.length); + return newList; + }); + } + setHasMore(true); } else { - setHasMore(false) + console.log('没有更多数据了'); + setHasMore(false); } + }).catch(error => { + console.error('获取数据失败:', error); + setHasMore(false); }); } const reloadMore = async () => { - setPage(page + 1) - getList(); + const nextPage = page + 1; + console.log('加载更多 - 下一页:', nextPage); + setPage(nextPage); + getList(nextPage); } useEffect(() => { @@ -80,7 +103,7 @@ const Index = () => { list.map((item, index) => { return (