From c13c622eac5551c6f099f148feb5256711ca34de Mon Sep 17 00:00:00 2001 From: 疯狂的狮子Li <15040126243@163.com> Date: 星期二, 11 七月 2023 21:03:01 +0800 Subject: [PATCH] !25 部分优化以及新增功能 Merge pull request !25 from ahaos/tspr --- src/layout/components/TagsView/ScrollPane.vue | 13 ++++++------- 1 files changed, 6 insertions(+), 7 deletions(-) diff --git a/src/layout/components/TagsView/ScrollPane.vue b/src/layout/components/TagsView/ScrollPane.vue index e4624dc..b50c628 100644 --- a/src/layout/components/TagsView/ScrollPane.vue +++ b/src/layout/components/TagsView/ScrollPane.vue @@ -6,22 +6,21 @@ <script setup lang="ts"> import useTagsViewStore from '@/store/modules/tagsView' -import { ElScrollbar } from 'element-plus'; import { TagView } from 'vue-router' const tagAndTagSpacing = ref(4); -const scrollContainerRef = ref(ElScrollbar) -const scrollWrapper = computed(() => scrollContainerRef.value.$refs.wrapRef); +const scrollContainerRef = ref<ElScrollbarInstance>() +const scrollWrapper = computed(() => scrollContainerRef.value?.$refs.wrapRef as any); onMounted(() => { - scrollWrapper.value.addEventListener('scroll', emitScroll, true) + scrollWrapper.value?.addEventListener('scroll', emitScroll, true) }) onBeforeUnmount(() => { - scrollWrapper.value.removeEventListener('scroll', emitScroll) + scrollWrapper.value?.removeEventListener('scroll', emitScroll) }) const handleScroll = (e: WheelEvent) => { - const eventDelta = (e as any).wheelDelta || -e.deltaY * 40 + const eventDelta = (e as any).wheelDelta || - e.deltaY * 40 const $scrollWrapper = scrollWrapper.value; $scrollWrapper.scrollLeft = $scrollWrapper.scrollLeft + eventDelta / 4 } @@ -34,7 +33,7 @@ const visitedViews = computed(() => tagsViewStore.visitedViews); const moveToTarget = (currentTag: TagView) => { - const $container = scrollContainerRef.value.$el + const $container = scrollContainerRef.value?.$el const $containerWidth = $container.offsetWidth const $scrollWrapper = scrollWrapper.value; -- Gitblit v1.9.3