优化比赛卡片显示,添加球队名称和logo,调整样式;更新实时比分功能,简化数据处理逻辑

This commit is contained in:
yuchenglong
2026-01-19 15:16:27 +08:00
parent c522f2ba01
commit e766a833f6
3 changed files with 72 additions and 42 deletions

View File

@@ -322,11 +322,6 @@ export default function HomeScreen() {
deviceTimeZone,
);
//将isLive全改为true
list.forEach((m) => {
(m as Match).isLive = true;
});
const normalizeDate = (d: Date) => {
const year = d.getFullYear();
const month = String(d.getMonth() + 1).padStart(2, "0");
@@ -340,8 +335,8 @@ export default function HomeScreen() {
let merged: Match[] = list.map((m) => ({
...m,
date: (m as any).date || selectedStr,
sportId: (m as any).sportId ?? sportId,
date: m.date || selectedStr,
sportId: m.sportId ?? sportId,
}));
if (shouldMergeLive) {
@@ -368,10 +363,16 @@ export default function HomeScreen() {
return {
id,
league: item.league_name,
leagueName: item.league_name,
leagueLogo: item.league_logo,
time: formatLiveTime(item.event_status, item.event_time),
date: item.event_date,
home: item.event_home_team,
away: item.event_away_team,
homeTeamName: item.event_home_team,
awayTeamName: item.event_away_team,
homeTeamLogo: item.home_team_logo,
awayTeamLogo: item.away_team_logo,
scoreText: item.event_final_result || "0 - 0",
fav: false,
sportId: sportId,
@@ -415,18 +416,11 @@ export default function HomeScreen() {
);
}
const isLiveRow = (m: Match) => {
const t = (m.time || "").trim();
return (
/\d+'$/.test(t) || /^\d{1,3}$/.test(t) || /\b(ht|half)\b/i.test(t)
);
};
// 收藏置顶,其次直播置顶
const sortedList = [...listWithFavStatus].sort((a, b) => {
if (a.fav !== b.fav) return a.fav ? -1 : 1;
const aLive = isLiveRow(a);
const bLive = isLiveRow(b);
const aLive = !!a.isLive;
const bLive = !!b.isLive;
if (aLive !== bLive) return aLive ? -1 : 1;
return 0;
});
@@ -597,7 +591,6 @@ export default function HomeScreen() {
onSelectDate={updateDate}
/>
)}
</ThemedView>
);
}