refactor: Remove conditional image priority loading, setting all movie and video card images to eager.

This commit is contained in:
kuekhaoyang
2025-11-24 17:39:19 +08:00
parent 41edd7ce26
commit 82c1f38685
4 changed files with 6 additions and 13 deletions
+2 -4
View File
@@ -20,10 +20,9 @@ interface DoubanMovie {
interface MovieCardProps {
movie: DoubanMovie;
onMovieClick: (movie: DoubanMovie) => void;
priority?: boolean;
}
export const MovieCard = memo(function MovieCard({ movie, onMovieClick, priority = false }: MovieCardProps) {
export const MovieCard = memo(function MovieCard({ movie, onMovieClick }: MovieCardProps) {
return (
<Link
href={`/?q=${encodeURIComponent(movie.title)}`}
@@ -45,8 +44,7 @@ export const MovieCard = memo(function MovieCard({ movie, onMovieClick, priority
fill
className="object-cover transition-transform duration-300 group-hover:scale-105 rounded-[var(--radius-2xl)]"
sizes="(max-width: 640px) 50vw, (max-width: 768px) 33vw, (max-width: 1024px) 25vw, 20vw"
loading={priority ? "eager" : "lazy"}
priority={priority}
loading="eager"
unoptimized
referrerPolicy="no-referrer"
onError={(e) => {
+1 -2
View File
@@ -37,12 +37,11 @@ export function MovieGrid({
return (
<>
<div className="grid grid-cols-2 sm:grid-cols-3 md:grid-cols-4 lg:grid-cols-5 gap-4 md:gap-6">
{movies.map((movie, index) => (
{movies.map((movie) => (
<MovieCard
key={movie.id}
movie={movie}
onMovieClick={onMovieClick}
priority={index < 10}
/>
))}
</div>
+2 -5
View File
@@ -16,7 +16,6 @@ interface VideoCardProps {
cardId: string;
isActive: boolean;
onCardClick: (e: React.MouseEvent, cardId: string, videoUrl: string) => void;
priority?: boolean;
}
export const VideoCard = memo<VideoCardProps>(({
@@ -24,8 +23,7 @@ export const VideoCard = memo<VideoCardProps>(({
videoUrl,
cardId,
isActive,
onCardClick,
priority = false
onCardClick
}) => {
return (
<div
@@ -61,8 +59,7 @@ export const VideoCard = memo<VideoCardProps>(({
fill
className="object-cover rounded-[var(--radius-2xl)]"
sizes="(max-width: 640px) 33vw, (max-width: 1024px) 20vw, 16vw"
loading={priority ? "eager" : "lazy"}
priority={priority}
loading="eager"
unoptimized
referrerPolicy="no-referrer"
onError={(e) => {
+1 -2
View File
@@ -89,7 +89,7 @@ export const VideoGrid = memo(function VideoGrid({ videos, className = '' }: Vid
contentVisibility: 'auto',
}}
>
{visibleItems.map(({ video, videoUrl, cardId }, index) => {
{visibleItems.map(({ video, videoUrl, cardId }) => {
const isActive = activeCardId === cardId;
return (
@@ -100,7 +100,6 @@ export const VideoGrid = memo(function VideoGrid({ videos, className = '' }: Vid
cardId={cardId}
isActive={isActive}
onCardClick={handleCardClick}
priority={index < 10}
/>
);
})}