<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
相关推荐
我是大头鸟7 分钟前
SpringMVC 内容协商处理Humbunklung8 分钟前
Visual Studio 2022 中添加“高级保存选项”及解决编码问题墨水白云24 分钟前
nestjs[一文学懂nestjs中对npm功能包的封装,ioredis封装示例]低代码布道师26 分钟前
第五部分:第一节 - Node.js 简介与环境:让 JavaScript 走进厨房满怀10151 小时前
【Vue 3全栈实战】从响应式原理到企业级架构设计luckywuxn1 小时前
使用gitbook 工具编写接口文档或博客梅子酱~1 小时前
Vue 学习随笔系列二十三 -- el-date-picker 组件伟笑1 小时前
elementUI 循环出来的表单,怎么做表单校验?辣辣y2 小时前
React中useMemo和useCallback的作用:Alice-YUE2 小时前
【HTML5学习笔记1】html标签(上)