diff --git a/src/components/Settings.vue b/src/components/Settings.vue index 3ff712b6..c9256301 100644 --- a/src/components/Settings.vue +++ b/src/components/Settings.vue @@ -10,76 +10,24 @@ const { t, locale } = useI18n() const authorizeBtn = ref() as Ref const langsSelect = ref() as Ref -const themeColorOptions = reactive>([ - - { - value: '#22c55e', - label: '#22c55e', - }, - { - value: '#34d399', - label: '#34d399', - }, - { - value: '#14b8a6', - label: '#14b8a6', - }, - { - value: '#06b6d4', - label: '#06b6d4', - }, - { - value: '#00a1d6', - label: '#00a1d6', - }, - { - value: '#60a5fa', - label: '#60a5fa', - }, - { - value: '#3b82f6', - label: '#3b82f6', - }, - { - value: '#6366f1', - label: '#6366f1', - }, - { - value: '#818cf8', - label: '#818cf8', - }, - { - value: '#a78bfa', - label: '#a78bfa', - }, - { - value: '#f46d43', - label: '#f46d43', - }, - { - value: '#fb923c', - label: '#fb923c', - }, - { - value: '#f59e0b', - label: '#f59e0b', - }, - { - value: '#eab308', - label: '#eab308', - }, - { - value: '#f43f5e', - label: '#f43f5e', - }, - { - value: '#fb7299', - label: '#fb7299', - }, - { - value: '#fda4af', - label: '#fda4af', - }, +const themeColorOptions = reactive>([ + '#22c55e', + '#34d399', + '#14b8a6', + '#06b6d4', + '#00a1d6', + '#60a5fa', + '#3b82f6', + '#6366f1', + '#818cf8', + '#a78bfa', + '#f46d43', + '#fb923c', + '#f59e0b', + '#eab308', + '#f43f5e', + '#fb7299', + '#fda4af', ]) const bilibiliEvolvedThemeColor = ref('#00a1d6') @@ -188,17 +136,23 @@ function changeThemeColor(color: string) { Recommendation mode -
+
web
app @@ -213,7 +167,7 @@ function changeThemeColor(color: string) { {{ $t('settings.authorize_app_desc') }}
-
@@ -247,14 +201,14 @@ function changeThemeColor(color: string) {
diff --git a/src/contentScripts/views/Home/components/RecommendContent.vue b/src/contentScripts/views/Home/components/RecommendContent.vue index 073fd546..b0d8742d 100644 --- a/src/contentScripts/views/Home/components/RecommendContent.vue +++ b/src/contentScripts/views/Home/components/RecommendContent.vue @@ -8,29 +8,40 @@ const isLoading = ref(false) const needToLoginFirst = ref(false) let refreshIdx = 1 -onMounted(() => { - getRecommendVideos() - // if (settings.value.recommendationMode === 'web') { getRecommendVideos() } - // else { - // for (let i = 0; i < 3; i++) - // getAppRecommendVideos() - // } - - window.onscroll = () => { - if (window.innerHeight + window.scrollY >= document.body.scrollHeight - 20) { - if (isLoading.value) - return - - getRecommendVideos() - // if (settings.value.recommendationMode === 'web') { getRecommendVideos() } - // else { - // for (let i = 0; i < 3; i++) - // getAppRecommendVideos() - // } - } +watch(() => settings.value.recommendationMode, (newValue, oldValue) => { + videoList.length = 0 + if (newValue === 'web') { getRecommendVideos() } + else { + for (let i = 0; i < 3; i++) + getAppRecommendVideos() } }) +onMounted(async () => { + // getRecommendVideos() + setTimeout(() => { + if (settings.value.recommendationMode === 'web') { getRecommendVideos() } + else { + for (let i = 0; i < 3; i++) + getAppRecommendVideos() + } + + window.onscroll = () => { + if (window.innerHeight + window.scrollY >= document.body.scrollHeight - 20) { + if (isLoading.value) + return + + // getRecommendVideos() + if (settings.value.recommendationMode === 'web') { getRecommendVideos() } + else { + for (let i = 0; i < 3; i++) + getAppRecommendVideos() + } + } + } + }, 200) +}) + onUnmounted(() => { // remove the global window.onscroll event window.onscroll = () => {} @@ -119,23 +130,23 @@ function jumpToLoginPage() { m="b-0 t-0" grid="~ 2xl:cols-5 xl:cols-4 lg:cols-3 md:cols-2 gap-4" > - - - - + -