<template>
<div class="timer">
<p>{{ formatTime }}</p>
<button @click="startTimer" v-if="!isTiming">开始计时</button>
<button @click="stopTimer" v-else>停止计时</button>
</div>
</template>
<script>
export default {
data() {
return {
isTiming: false,
time: 0,
timer: null
}
},
computed: {
formatTime() {
const minutes = Math.floor(this.time / 60)
const seconds = this.time % 60
return `${minutes}:${seconds < 10 ? '0' : ''}${seconds}`
}
},
methods: {
startTimer() {
this.isTiming = true
this.timer = setInterval(() => {
this.time++
}, 1000)
},
stopTimer() {
this.isTiming = false
clearInterval(this.timer)
}
}
}
</script>
<style>
.timer {
text-align: center;
font-size: 24px;
margin-top: 50px;
}
</style>
在Uni-app中实现计时器效果
蜕变菜鸟2024-08-27 17:46
相关推荐
kyriewen13 小时前
我手写了一个 EventEmitter,面试官追问了 6 个问题——第 4 个我没答上来IT_陈寒13 小时前
Java的Date类又坑了我一次,改用时间戳真香山河木马14 小时前
矩阵专题2-怎么创建视图矩阵(uViewMatrix)小林攻城狮14 小时前
使用 Transport 节流解决 Vercel AI SDK 流式渲染卡死问题前端缘梦14 小时前
告别 TS 运行时类型漏洞!Zod 完整入门实战教程(前端 / 全栈必备)the_answer14 小时前
Webpack vs Vite 深度对比分析转转技术团队14 小时前
验证码识别实战:前端不写页面,改训模型了?MomentYY14 小时前
Temperature:AI 的“脑洞旋钮”远航_15 小时前
OpenSpec 完整详细介绍召钱熏15 小时前
状态枚举正确≠渲染正确:一个语音按钮的状态机边界修复实录