| 123456789101112131415161718192021222324252627282930 |
- import { ref, onMounted, onUnmounted } from 'vue'
- import { storeToRefs } from 'pinia'
- import { useSlidesStore } from '@/store'
- export default () => {
- const { slides } = storeToRefs(useSlidesStore())
- const timer = ref<number | null>(null)
- const slidesLoadLimit = ref(50)
- const loadSlide = () => {
- if (slides.value.length > slidesLoadLimit.value) {
- timer.value = setTimeout(() => {
- slidesLoadLimit.value = slidesLoadLimit.value + 20
- loadSlide()
- }, 600)
- }
- else slidesLoadLimit.value = 9999
- }
- onMounted(loadSlide)
- onUnmounted(() => {
- if (timer.value) clearTimeout(timer.value)
- })
- return {
- slidesLoadLimit,
- }
- }
|