vue3实现倒计时,使用setup方法
时间: 2024-05-04 15:04:04 浏览: 202
vue 验证码界面实现点击后标灰并设置div按钮不可点击状态
在 Vue 3 中,可以使用 `setup` 方法来实现倒计时。以下是一个简单的示例:
```
<template>
<div>{{ timeRemaining }}</div>
</template>
<script>
import { ref, watchEffect } from 'vue'
export default {
setup() {
const timeRemaining = ref(60)
// 倒计时
const timer = setInterval(() => {
timeRemaining.value--
}, 1000)
// 监听倒计时结束
watchEffect(() => {
if (timeRemaining.value === 0) {
clearInterval(timer)
console.log('倒计时结束')
}
})
return {
timeRemaining
}
}
}
</script>
```
在 `setup` 方法中,我们定义了一个 `timeRemaining` 的响应式数据,并使用 `setInterval` 来实现倒计时。在 `watchEffect` 中监听 `timeRemaining` 的变化,当倒计时结束时清除定时器。最后,将 `timeRemaining` 作为返回值暴露出去,以便在模板中进行使用。
阅读全文