木灵鱼儿

木灵鱼儿

阅读:2117

最后更新:2021/03/23/ 17:15:33

vue 使用dayjs创建倒计时

由于最近moment.js已经停止维护了,加上他本身确实有点大,只能找找其他的时间库了。

yarn add dayjs --dev

安装后我们引入:

import dayjs from "dayjs";
import duration from "dayjs/plugin/duration";
dayjs.extend(duration);
import "dayjs/locale/zh-cn";
dayjs.locale("zh-cn");

使用:

dayjs的计算,是需要用毫秒的,所以如何是s的时间戳,自己记得乘以1000。

制作倒计时我们需要两个值,一个是过期时间戳,一个是当前时间戳,当前时间戳可以通过Date.now()获取,过期则需要后端提供,假设过期时间为endTime

const diffTime = dayjs.duration(this.endTime * 1000 - dayjs());
const day = diffTime.days(); //天
const hours = diffTime.hours(); //小时
const minutes = diffTime.minutes(); //分钟
const seconds = diffTime.seconds(); //秒
return `${day}天${hours}小时${minutes}分${seconds}秒`;

dayjs()不传参的情况也是获取到当前的时间戳

通过duration计算出时间段,再依次获取:天、小时、分钟、秒

大部分属性和moment.js一致,然后我想说,妈的,dayjs那什么辣鸡官方文档,写了跟没写有什么区别,根本查不到任何有用的信息,全靠摸索,百度都没有文章,特别是中文版,一个字的有用信息都没有。

太失望了,还以为这玩意起码比moment的文档要好一些,然后,终究是错付了!

现在计算方法有了,定时器就自己写了,这还要写出来,那你基础很差哦!

版权申明

本文系作者 @木灵鱼儿 原创发布在木灵鱼儿 - 有梦就能远航站点。未经许可,禁止转载。

关于作者

站点职位 博主
获得点赞 0
文章被阅读 2117

相关文章

目录树