From 6191e17d69039dc23fc4e8b46aaddbcf5a0fd21c Mon Sep 17 00:00:00 2001 From: Hakadao Date: Wed, 19 Jul 2023 01:32:13 +0800 Subject: [PATCH] chore: lgfm --- src/contentScripts/views/Anime/Anime.vue | 5 ++--- src/contentScripts/views/App.vue | 7 +++++-- src/contentScripts/views/History/History.vue | 5 +++++ .../views/Home/components/RecommendContent.vue | 9 +++++++-- src/contentScripts/views/WatchLater/WatchLater.vue | 5 ----- 5 files changed, 19 insertions(+), 12 deletions(-) diff --git a/src/contentScripts/views/Anime/Anime.vue b/src/contentScripts/views/Anime/Anime.vue index d07ba573..eba885a4 100644 --- a/src/contentScripts/views/Anime/Anime.vue +++ b/src/contentScripts/views/Anime/Anime.vue @@ -6,7 +6,6 @@ import AnimeCardSkeleton from './components/AnimeCardSkeleton.vue' import type { AnimeItem, PopularAnime } from './types' import { getUserID, openLinkToNewTab } from '~/utils/main' import { numFormatter } from '~/utils/dataFormatter' -import { settings } from '~/logic' import emitter from '~/utils/mitt' const animeWatchList = reactive([]) @@ -23,6 +22,7 @@ onMounted(() => { getPopularAnimeList() getRecommendAnimeList() + emitter.off('reachBottom') emitter.on('reachBottom', () => { if (!isLoadingRecommendAnime.value) getRecommendAnimeList() @@ -30,8 +30,7 @@ onMounted(() => { }) onUnmounted(() => { - // remove the global window.onscroll event - window.onscroll = () => {} + emitter.off('reachBottom') }) function getAnimeWatchList() { diff --git a/src/contentScripts/views/App.vue b/src/contentScripts/views/App.vue index 9c2d96f0..52203c66 100644 --- a/src/contentScripts/views/App.vue +++ b/src/contentScripts/views/App.vue @@ -110,8 +110,11 @@ onMounted(() => { if ( mainAppRef.value.clientHeight + mainAppRef.value.scrollTop >= mainAppRef.value.scrollHeight - 20 - ) - emitter.emit('reachBottom') + ) { + nextTick(() => { + emitter.emit('reachBottom') + }) + } if (mainAppRef.value.scrollTop === 0) showTopbarMask.value = false diff --git a/src/contentScripts/views/History/History.vue b/src/contentScripts/views/History/History.vue index 53591b0e..550dd4c1 100644 --- a/src/contentScripts/views/History/History.vue +++ b/src/contentScripts/views/History/History.vue @@ -36,6 +36,7 @@ onMounted(() => { getHistoryList() getHistoryPauseStatus() + emitter.off('reachBottom') emitter.on('reachBottom', () => { if (isLoading.value) return @@ -48,6 +49,10 @@ onMounted(() => { }) }) +onUnmounted(() => { + emitter.off('reachBottom') +}) + /** * Get history list */ diff --git a/src/contentScripts/views/Home/components/RecommendContent.vue b/src/contentScripts/views/Home/components/RecommendContent.vue index 6655b139..06a7b418 100644 --- a/src/contentScripts/views/Home/components/RecommendContent.vue +++ b/src/contentScripts/views/Home/components/RecommendContent.vue @@ -33,19 +33,24 @@ onMounted(async () => { } }, 200) + emitter.off('reachBottom') emitter.on('reachBottom', () => { if (!isLoading.value) { if (settings.value.recommendationMode === 'web') { getRecommendVideos() } else { - for (let i = 0; i < 3; i++) - getAppRecommendVideos() + // for (let i = 0; i < 3; i++) + getAppRecommendVideos() } } }) }) +onUnmounted(() => { + emitter.off('reachBottom') +}) + async function getRecommendVideos() { isLoading.value = true try { diff --git a/src/contentScripts/views/WatchLater/WatchLater.vue b/src/contentScripts/views/WatchLater/WatchLater.vue index 95a552c7..648e46c1 100644 --- a/src/contentScripts/views/WatchLater/WatchLater.vue +++ b/src/contentScripts/views/WatchLater/WatchLater.vue @@ -15,11 +15,6 @@ onMounted(() => { getAllWatchLaterList() }) -onUnmounted(() => { - // remove the global window.onscroll event - window.onscroll = () => {} -}) - /** * Get watch later list */