Typescript 实现倒计时功能 useCountdown

效果图

代码块

useCountdown.ts

import {onUnmounted, reactive, ref, watch} from "vue";

type union = 'days' | 'hours' | 'minutes' | 'seconds' | 'milliseconds'

export type Remains = Record<union, number>;

/**
 * 创建一个倒计时
 *
 * 用法
 */
export const useCountDown = () => {
    const remainMilliseconds = ref();
    const started = ref(false);
    const finished = ref<boolean>();
    const remains = reactive<Remains>({
        days: 0,
        hours: 0,
        minutes: 0,
        seconds: 0,
        milliseconds: 0,
    });

    const start = (deadline: number) => {
        if (started.value) {
            return
        }
        started.value = true
        loop(deadline)
    }

    const loop &#

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/803636.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

“七夕之夜”:艺术家刘兰芳、陶玉玲等相约临沂蒙山沂水大剧院

人海信息网山东讯&#xff08;冯爱云、徐婉桦&#xff09; 近日&#xff0c;记者从北京御龙古今艺术剧院山东分院获悉&#xff0c;由该院承办、中国文艺研究会指导、北京御龙古今艺术剧院主办的2024御龙“七夕之夜”演唱会&#xff0c;将在浪漫的七夕前夜——8月9日晚&#xf…

视频压縮大小不影响画质,视频压缩大小不影响画质的软件

在数字化浪潮推动下&#xff0c;视频制作和分享已成为我们生活的一部分。然而&#xff0c;视频文件体积过大常常让分享和存储变得头疼。今天&#xff0c;我们就来聊聊如何在苹果电脑上压缩视频文件大小&#xff0c;让你的视频瞬间瘦身&#xff01; 方法一、 1.下载并安装视频压…

JavaScript 中怎么看数据返回值

文章目录 前言console.log()1. 输出简单的文本2. 输出变量3. 输出表达式的结果4. 输出对象和数组5. 输出多个参数6. 使用模板字符串7. 输出错误信息 alert()基本用法使用场景注意事项 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 我只知道后端程序跑…

记录些MySQL题集(7)

1. 什么是SQL&#xff1f; SQL 的全称是 Structured Query Language&#xff0c;即结构化查询语言&#xff0c;它是用来与关系型数据库管理系统&#xff08;RDBMS&#xff09;交互的语言&#xff0c;包括从表中获取、更新、插入和删除数据&#xff0c;也就是我们常说的增删改查…

【异步爬虫:利用异步协程抓取一部电影】

利用异步协程抓取一部电影 我们把目光转向wbdy. 目前该案例还是可以用的. 我们想要抓取网上的视频资源就必须要了解我们的视频网站是如何工作的. 这里我用91看剧来做举例. 其他网站的原理是一样的. 1.视频网站是如何工作的 假设, 你现在想要做一个视频网站. 也有很多的UP猪…

Kafka Producer发送消息流程之消息异步发送和同步发送

文章目录 1. 异步发送2. 同步发送 1. 异步发送 Kafka默认就是异步发送&#xff0c;在Main线程中的多条消息&#xff0c;没有严格的先后顺序&#xff0c;Sender发送后就继续下一条&#xff0c;异步接受结果。 public class KafkaProducerCallbackTest {public static void mai…

集成excel工具:自定义导入回调监听器、自定义类型转换器、web中的读、捕获文件格式转换错误ExcelDataConvertException

文章目录 I 封装导入导出1.1 定义工具类1.2 自定义读回调监听器: 回调业务层处理导入数据1.3 定义文件导入上下文1.4 定义回调协议II 自定义转换器2.1 自定义枚举转换器2.2 日期转换器2.3 时间、日期、月份之间的互转2.4 LongConverterIII web中的读3.1 使用默认回调监听器3.2…

【Android14 ShellTransitions】(七)Transition就绪

Transition.onTransactionReady的内容比较长&#xff0c;我们挑重点的部分逐段分析&#xff08;跳过的地方并非不重要&#xff0c;而是我柿子挑软的捏&#xff09;。 1 窗口绘制状态的流转以及显示SurfaceControl 注意我们这里的SurfaceControl特指的是WindowSurfaceControll…

标准IO(Ubuntu)

标准IO 什么是标准IO 头文件stdio.h 用的最多的两个输入输出函数printf和scanf 针对终端的输入输出函数 数据输入到特定的文件需要的条件 需要知道指定文件的文件名和位置 输入到文件中的内容 指定文件 fopen函数 FILE *fopen(const char *pathname, const char *mode) 功能…

pnpm install安装失败

ERR_PNPM_META_FETCH_FAIL GET https://registry.npmjs.org/commitlint%2Fcli: request to https://registry.npmjs.org/commitlint%2Fcli failed, reason: connect ETIMEDOUT 2606:4700::6810:123:443 1. 检查网络连接 确保你的网络连接正常并且没有被防火墙或代理服务器阻止…

Linux shell编程学习笔记64:vmstat命令 获取进程、内存、虚拟内存、IO、cpu等信息

0 前言 在系统安全检查中&#xff0c;通常要收集进程、内存、IO等信息。Linux提供了功能众多的命令来获取这些信息。今天我们先研究vmstat命令。 1.vmstat命令的功能、用法、选项说明和注意事项 1.1 vmstat命令的功能 vmstat是 Virtual Meomory Statistics&#xff08;虚拟内…

【Java数据结构】初始线性表之一:链表

为什么要有链表 上一节我们描述了顺序表&#xff1a;【Java数据结构】初识线性表之一&#xff1a;顺序表-CSDN博客 并且进行了简单模拟实现。通过源码知道&#xff0c;ArrayList底层使用数组来存储元素。 由于其底层是一段连续空间&#xff0c;当在ArrayList任意位置插入或者…

NGFW和防火墙的区别?

NGFW&#xff08;Next Generation Firewall&#xff0c;下一代防火墙&#xff09;和FW&#xff08;Firewall&#xff0c;防火墙&#xff09;在网络安全领域都扮演着重要角色&#xff0c;但它们在功能、性能和应用场景上存在显著的区别。以下是NGFW和FW之间的主要区别&#xff1…

数据库作业九

1、安装redis&#xff0c;启动客户端、验证。 2、string类型数据的命令操作&#xff1a; &#xff08;1&#xff09; 设置键值&#xff1a; &#xff08;2&#xff09; 读取键值&#xff1a; ​ &#xff08;3&#xff09; 数值类型自增1&#xff1a; ​ &#xff08;4&am…

NFT项目的第三方功能及接口

NFT项目涉及到第三方功能及接口的情况非常常见&#xff0c;因为NFT项目本身的功能通常是有限的&#xff0c;需要通过与第三方功能和接口的整合来实现更丰富的功能和更好的用户体验。北京木奇移动技术有限公司&#xff0c;专业的软件外包开发公司&#xff0c;欢迎交流合作。 以下…

【LeetCode】十六、并查集

文章目录 1、并查集Union Find2、并查集find的优化&#xff1a;路径压缩 Quick find3、并查集union的优化&#xff1a;权重标记4、leetcode200&#xff1a;岛屿数量解法一&#xff1a;DFS 1、并查集Union Find 并查集&#xff0c;一种树形的数据结构&#xff0c;处理不相交的两…

如何在excel表中实现单元格满足条件时整行变色?

可以试试使用条件格式&#xff1a; 一、条件格式 所谓“自动变色”就要使用条件格式。 先简单模拟数据如下&#xff0c; 按 B列数字为偶数 为条件&#xff0c;整行标记为蓝色背景色。 可以这样设置&#xff1a; 先选中1:10行数据&#xff0c;在这里要确定一下名称栏里显示…

DNS查询过程

DNS&#xff08;域名系统&#xff0c;Domain Name System&#xff09;是一个用于将域名和IP地址相互映射的系统。当你在浏览器中输入一个网址时&#xff0c;浏览器会通过DNS查询过程来找到对应的IP地址&#xff0c;以便能够连接到目标服务器。其查询过程一般通过以下步骤&#…

Apple Vision Pro 和其商业未来

机器人、人工智能相关领域 news/events &#xff08;专栏目录&#xff09; 本文目录 一、Vision Pro 生态系统二、Apple Vision Pro 的营销用例 随着苹果公司备受期待的进军可穿戴计算领域&#xff0c;新款 Apple Vision Pro 承载着巨大的期望。 苹果公司推出的 Vision Pro 售…

MySQL数据库慢查询日志、SQL分析、数据库诊断

1 数据库调优维度 业务需求&#xff1a;勇敢地对不合理的需求说不系统架构&#xff1a;做架构设计的时候&#xff0c;应充分考虑业务的实际情况&#xff0c;考虑好数据库的各种选择(读写分离?高可用?实例个数?分库分表?用什么数据库?)SQL及索引&#xff1a;根据需求编写良…