From f1252dcf6151b421efe40187965029aebc552461 Mon Sep 17 00:00:00 2001 From: Nekojita1 Date: Wed, 28 Jul 2021 15:05:24 +0800 Subject: [PATCH] Carousel: reset the timer when setActiveItem method is called (#20846) --- packages/carousel/src/main.vue | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/packages/carousel/src/main.vue b/packages/carousel/src/main.vue index b5d90e4a0..197cb83fc 100644 --- a/packages/carousel/src/main.vue +++ b/packages/carousel/src/main.vue @@ -236,6 +236,11 @@ export default { this.timer = setInterval(this.playSlides, this.interval); }, + resetTimer() { + this.pauseTimer(); + this.startTimer(); + }, + setActiveItem(index) { if (typeof index === 'string') { const filteredItems = this.items.filter(item => item.name === index); @@ -260,6 +265,7 @@ export default { if (oldIndex === this.activeIndex) { this.resetItemPosition(oldIndex); } + this.resetTimer(); }, prev() {