From f53873c49b3349e6dcac75683775ba3ce0595f63 Mon Sep 17 00:00:00 2001 From: hajimi Date: Mon, 3 Aug 2026 02:24:44 +0800 Subject: [PATCH] fix: hide sports without hot leagues --- .../components/MatchCenterTabsPanel.vue | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/uniapp/src/packages_match/components/MatchCenterTabsPanel.vue b/uniapp/src/packages_match/components/MatchCenterTabsPanel.vue index 27b5efe..a20d873 100644 --- a/uniapp/src/packages_match/components/MatchCenterTabsPanel.vue +++ b/uniapp/src/packages_match/components/MatchCenterTabsPanel.vue @@ -33,7 +33,7 @@ - {{ tab.label }} @@ -425,6 +425,20 @@ const leagueTabs = computed(() => { return leagues }) +const visibleSportTabs = computed(() => { + if (!hotLeagueMode.value) return sportTabs.value + + const hotSportTypes = new Set() + Object.keys(allLeagues.value).forEach((sportType) => { + const leagues = allLeagues.value[Number(sportType)] || [] + if (leagues.some((league: any) => Number(league?.is_hot) === 1)) { + hotSportTypes.add(Number(sportType)) + } + }) + + return sportTabs.value.filter((tab: any) => Number(tab?.value) === 0 || hotSportTypes.has(Number(tab?.value))) +}) + const matchGroups = computed(() => { const groups: { title: string; type: string; items: any[]; order: number }[] = [] const visibleLiveList = filterScheduleItems(liveList.value)