From f4f0780827cd0eaed04afd4a5b778f08bbb28d03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E4=BA=8E=E8=82=96=E7=A3=8A?= <18851179580@163.com> Date: Thu, 5 Sep 2024 09:33:45 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=80=92=E8=AE=A1=E6=97=B6?= =?UTF-8?q?=E9=80=BB=E8=BE=91=E6=9B=B4=E6=96=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/components/model-seckill/index.vue | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/components/model-seckill/index.vue b/src/components/model-seckill/index.vue index d6d7235a..e43b7752 100644 --- a/src/components/model-seckill/index.vue +++ b/src/components/model-seckill/index.vue @@ -292,12 +292,14 @@ const updateCountdown = () => { } const distance = new Date(endTime).getTime() - now.getTime(); // 如果倒计时结束,显示结束信息 - if (distance < 0) { + if (distance <= 1000) { clearInterval(intervalId.value); // 如果是待开始状态,则显示开始倒计时,并且在结束的时候根据结束时候再执行一个定时器 if (seckill_time.value.status === 0) { seckill_time.value.status = 1; seckill_time.value.time_first_text = '距结束'; + // 先执行一次倒计时,后续的等待倒计时执行 + setTimeout(() => { updateCountdown();}, 0); intervalId.value = setInterval(updateCountdown, 1000); } return; @@ -328,11 +330,13 @@ onBeforeMount(() => { } const { status, time_first_text } = data.current.time; seckill_time.value = { - endTime: data.current.time_end, - startTime: data.current.time_start, - status: status, + endTime: '2024-09-05 09:36:00', + startTime: '2024-09-05 09:33:00', + status: 0, time_first_text: time_first_text } + // 先执行一次倒计时,后续的等待倒计时执行 + setTimeout(() => { updateCountdown();}, 0); intervalId.value = setInterval(updateCountdown, 1000); } else { list.value = Array(4).fill(default_list);