mirror of
https://github.com/KuekHaoYang/KVideo.git
synced 2026-08-16 17:23:43 +08:00
refactor: Remove conditional image priority loading, setting all movie and video card images to eager.
This commit is contained in:
@@ -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) => {
|
||||
|
||||
@@ -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>
|
||||
|
||||
@@ -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) => {
|
||||
|
||||
@@ -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}
|
||||
/>
|
||||
);
|
||||
})}
|
||||
|
||||
Reference in New Issue
Block a user