File size: 679 Bytes
89ce340 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
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,
}
} |