修复高级推荐报错无限刷新

This commit is contained in:
mtvpls
2026-04-02 14:36:35 +08:00
parent f9480a13e7
commit 7757a331f8
+3 -2
View File
@@ -110,6 +110,7 @@ export default function AdvancedRecommendationPage() {
setHasMore(Number(data.page || page) < Number(data.pageCount || 1)); setHasMore(Number(data.page || page) < Number(data.pageCount || 1));
} catch (err) { } catch (err) {
setError(err instanceof Error ? err.message : '获取推荐失败'); setError(err instanceof Error ? err.message : '获取推荐失败');
setHasMore(false);
} finally { } finally {
setIsLoadingVideos(false); setIsLoadingVideos(false);
} }
@@ -119,7 +120,7 @@ export default function AdvancedRecommendationPage() {
}, [selectedSource, page]); }, [selectedSource, page]);
useEffect(() => { useEffect(() => {
if (!loadMoreRef.current || !hasMore || isLoadingVideos) return; if (!loadMoreRef.current || !hasMore || isLoadingVideos || !!error) return;
const observer = new IntersectionObserver( const observer = new IntersectionObserver(
(entries) => { (entries) => {
@@ -132,7 +133,7 @@ export default function AdvancedRecommendationPage() {
observer.observe(loadMoreRef.current); observer.observe(loadMoreRef.current);
return () => observer.disconnect(); return () => observer.disconnect();
}, [hasMore, isLoadingVideos]); }, [error, hasMore, isLoadingVideos]);
return ( return (
<PageLayout activePath='/advanced-recommendation'> <PageLayout activePath='/advanced-recommendation'>