diff --git a/src/router/index.js b/src/router/index.js index 3802510..89d86fe 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -336,7 +336,7 @@ const router = createRouter({ name: 'couple', component: () => import('../views/Ranking/Couple/index.vue'), meta: { requiresAuth: true }, - }, //沙特下周一当天早上6点(北京时间3点)刷新 + }, //北京时间每周一早上5点刷新 { path: '/top-list', name: 'top-list', diff --git a/src/views/Ranking/Couple/GamePlay/Gameplay.vue b/src/views/Ranking/Couple/GamePlay/Gameplay.vue index cc368c6..6318153 100644 --- a/src/views/Ranking/Couple/GamePlay/Gameplay.vue +++ b/src/views/Ranking/Couple/GamePlay/Gameplay.vue @@ -241,14 +241,51 @@ const showDrawRecord = () => { getReceiveRecords() // 获取中奖记录,并让爷爷组件打开弹窗 } -// 获取数据 -const initData = () => { - getMyLotteryTicketCount() // 获取我的剩余抽奖券数量 - getUserFragmentBackpack() // 获取用户碎片背包 +// 页面初始化数据 +const initData = async () => { + await Promise.all([ + getMyLotteryTicketCount(), // 获取我的剩余抽奖券数量 + getUserFragmentBackpack(), // 获取用户碎片背包 + ]) +} + +// 预加载关键图片 +const preloadCriticalImages = async () => { + const criticalImages = [] + + const criticalImages_ar = [] + + if (currentLangType.value == 'en') { + await preloadImages(criticalImages) + } else if (currentLangType.value == 'ar') { + await preloadImages(criticalImages_ar) + } +} + +// 完成预加载 +const completePreloading = async () => { + try { + // 执行所有初始化操作 + await Promise.all([initData(), preloadCriticalImages()]) + console.log('预加载完成,初始化数据成功') + } catch (error) { + console.error('预加载过程中发生错误:', error) + } finally { + // 无论成功或失败都结束加载状态 + isLoading.value = false + } +} + +// 使用工具函数连接APP +const connectToAppHandler = async () => { + await connectToApp(() => { + // 连接成功回调 + completePreloading() // 完成预加载 + }) } onMounted(() => { - initData() // 获取数据 + connectToAppHandler() }) diff --git a/src/views/Ranking/Couple/GamePlay/components/exchange.vue b/src/views/Ranking/Couple/GamePlay/components/exchange.vue index 675022f..2854654 100644 --- a/src/views/Ranking/Couple/GamePlay/components/exchange.vue +++ b/src/views/Ranking/Couple/GamePlay/components/exchange.vue @@ -115,8 +115,50 @@ const exchangeGoods = async (goods) => { exchangeConfirmShow.value = true } +// 页面初始化数据 +const initData = async () => { + await Promise.all([ + getActivityResource(), // 获取兑换物品列表 + ]) +} + +// 预加载关键图片 +const preloadCriticalImages = async () => { + const criticalImages = [] + + const criticalImages_ar = [] + + if (currentLangType.value == 'en') { + await preloadImages(criticalImages) + } else if (currentLangType.value == 'ar') { + await preloadImages(criticalImages_ar) + } +} + +// 完成预加载 +const completePreloading = async () => { + try { + // 执行所有初始化操作 + await Promise.all([initData(), preloadCriticalImages()]) + console.log('预加载完成,初始化数据成功') + } catch (error) { + console.error('预加载过程中发生错误:', error) + } finally { + // 无论成功或失败都结束加载状态 + isLoading.value = false + } +} + +// 使用工具函数连接APP +const connectToAppHandler = async () => { + await connectToApp(() => { + // 连接成功回调 + completePreloading() // 完成预加载 + }) +} + onMounted(() => { - getActivityResource() // 获取兑换物品列表 + connectToAppHandler() }) diff --git a/src/views/Ranking/Couple/GamePlay/components/lottery.vue b/src/views/Ranking/Couple/GamePlay/components/lottery.vue index a967a21..a128cb2 100644 --- a/src/views/Ranking/Couple/GamePlay/components/lottery.vue +++ b/src/views/Ranking/Couple/GamePlay/components/lottery.vue @@ -448,8 +448,50 @@ const updateNumbers = async () => { await getUserFragmentBackpack() // 获取碎片数量 } +// 页面初始化数据 +const initData = async () => { + await Promise.all([ + getActivityDetail(), //获取奖池 + ]) +} + +// 预加载关键图片 +const preloadCriticalImages = async () => { + const criticalImages = [] + + const criticalImages_ar = [] + + if (currentLangType.value == 'en') { + await preloadImages(criticalImages) + } else if (currentLangType.value == 'ar') { + await preloadImages(criticalImages_ar) + } +} + +// 完成预加载 +const completePreloading = async () => { + try { + // 执行所有初始化操作 + await Promise.all([initData(), preloadCriticalImages()]) + console.log('预加载完成,初始化数据成功') + } catch (error) { + console.error('预加载过程中发生错误:', error) + } finally { + // 无论成功或失败都结束加载状态 + isLoading.value = false + } +} + +// 使用工具函数连接APP +const connectToAppHandler = async () => { + await connectToApp(() => { + // 连接成功回调 + completePreloading() // 完成预加载 + }) +} + onMounted(() => { - getActivityDetail() //获取奖池 + connectToAppHandler() }) diff --git a/src/views/Ranking/Couple/GamePlay/components/signIn.vue b/src/views/Ranking/Couple/GamePlay/components/signIn.vue index ffa1dfe..6f934de 100644 --- a/src/views/Ranking/Couple/GamePlay/components/signIn.vue +++ b/src/views/Ranking/Couple/GamePlay/components/signIn.vue @@ -259,9 +259,51 @@ const getSignInStatus = async () => { } } +// 页面初始化数据 +const initData = async () => { + await Promise.all([ + getSignInStatus(), // 获取签到状态 + ]) +} + +// 预加载关键图片 +const preloadCriticalImages = async () => { + const criticalImages = [] + + const criticalImages_ar = [] + + if (currentLangType.value == 'en') { + await preloadImages(criticalImages) + } else if (currentLangType.value == 'ar') { + await preloadImages(criticalImages_ar) + } +} + +// 完成预加载 +const completePreloading = async () => { + try { + // 执行所有初始化操作 + await Promise.all([initData(), preloadCriticalImages()]) + console.log('预加载完成,初始化数据成功') + } catch (error) { + console.error('预加载过程中发生错误:', error) + } finally { + // 无论成功或失败都结束加载状态 + isLoading.value = false + } +} + +// 使用工具函数连接APP +const connectToAppHandler = async () => { + await connectToApp(() => { + // 连接成功回调 + completePreloading() // 完成预加载 + }) +} + // 组件挂载时检测环境 onMounted(() => { - getSignInStatus() // 获取签到状态 + connectToAppHandler() startCountdown() //开启倒计时 }) diff --git a/src/views/Ranking/Couple/Ranking.vue b/src/views/Ranking/Couple/Ranking.vue index 1f7f245..ac47d0c 100644 --- a/src/views/Ranking/Couple/Ranking.vue +++ b/src/views/Ranking/Couple/Ranking.vue @@ -340,11 +340,52 @@ const observer = new IntersectionObserver((entries) => { }) }) +// 页面初始化数据 +const initData = async () => { + await Promise.all([ + apiGetRanking(), // 获取排行榜 + apiGetTop3Rewards(), // 获取前三名奖励 + ]) +} + +// 预加载关键图片 +const preloadCriticalImages = async () => { + const criticalImages = [] + + const criticalImages_ar = [] + + if (currentLangType.value == 'en') { + await preloadImages(criticalImages) + } else if (currentLangType.value == 'ar') { + await preloadImages(criticalImages_ar) + } +} + +// 完成预加载 +const completePreloading = async () => { + try { + // 执行所有初始化操作 + await Promise.all([initData(), preloadCriticalImages()]) + console.log('预加载完成,初始化数据成功') + } catch (error) { + console.error('预加载过程中发生错误:', error) + } finally { + // 无论成功或失败都结束加载状态 + isLoading.value = false + } +} + +// 使用工具函数连接APP +const connectToAppHandler = async () => { + await connectToApp(() => { + // 连接成功回调 + completePreloading() // 完成预加载 + }) +} + // 组件挂载时检测环境 onMounted(() => { - apiGetRanking() // 获取排行榜 - apiGetTop3Rewards() // 获取前三名奖励 - + connectToAppHandler() // 监听加载模块 if (RankingLoadmore.value) { console.log('监控加载模块')