Vue如何使用Dayjs計(jì)算常用日期詳解
在使用vue開發(fā)項(xiàng)目時(shí)覆致,前端常常需要計(jì)算一些日期時(shí)間营袜,如:
計(jì)算周月截止日期
計(jì)算XX天前/后的日期
將時(shí)間戳轉(zhuǎn)換為日期(YYYY-MM-DD)
計(jì)算月天數(shù)
日期轉(zhuǎn)時(shí)間戳
推薦一個(gè)輕量的處理時(shí)間和日期的 JavaScript 庫(kù):dayjs
使用這個(gè)插件計(jì)算常用日期十分方便
1、在項(xiàng)目中安裝dayjs,命令為:npm install dayjs --save
2玉转、在main.js中,添加如下2句代碼
1殴蹄、 import dayjs from 'dayjs';
2 究抓、Vue.prototype.dayjs = dayjs;
3、在頁(yè)面需要使用的地方袭灯,直接使用
當(dāng)前日期或時(shí)間戳轉(zhuǎn)換刺下,format后面就跟著想要格式化的內(nèi)容,**dayjs( ) **括號(hào)中不放任何參數(shù)稽荧,默認(rèn)為當(dāng)前日期橘茉,也可以放一個(gè)時(shí)間戳,直接轉(zhuǎn)換
(注意:使用Element組件的日期選擇器姨丈,其value-format屬性要求:
組件Dayjs(format)Element(value-format)
年? YYYY? ?yyyy
月? ?MM? ? ?MM
日? ?DD? ? ? dd
時(shí)? ?HH? ? ? HH
分? ?mm? mm
秒? ? ss? ss
其中年和日的表達(dá)略有不同畅卓,容易混)
1.this.dayjs().format("YYYY-MM-DD")
2.this.dayjs().format("YYYY-MM-DD HH:mm")
3.this.dayjs(1614787200000).format("YYYY-MM-DD HH:mm:ss")
2.計(jì)算某周/某月/某年的起始截止日期,所使用到的方法為startOf()蟋恬,endOf()翁潘,括號(hào)中可以是"week" 、 “month”歼争、 “year”
(ps:加format是為了更加直觀)
1.this.dayjs().startOf("week");
2.this.dayjs().endOf("week").format("YYYY-MM-DD");
3.this.dayjs().startOf("month").format("YYYY-MM-DD");
4.this.dayjs("2021-02-09").endOf("month").format("YYYY-MM-DD");
計(jì)算日期拜马,如幾天前箱歧、幾天后日期,
前(減)后(加)
subtract(參數(shù)1一膨,參數(shù)2)add(參數(shù)1呀邢,參數(shù)2)
參數(shù)1數(shù)字
參數(shù)2單位(“week” 、 “month”豹绪、 “year”)
1.this.dayjs().subtract(3,'day').format("YYYY-MM-DD")
2.this.dayjs().subtract(3,'month').format("YYYY-MM-DD")
3.this.dayjs().add(12,'day').format("YYYY-MM-DD")
4.this.dayjs('2021-03-12').add(45,'day').format("YYYY-MM-DD")
5). 獲取月天數(shù)价淌,使用方法dayInMonth()
1.this.dayjs().daysInMonth();
2.this.dayjs("2021-02-09").daysInMonth();
3.this.dayjs("2021-01").daysInMonth();
6)、普通日期轉(zhuǎn)換為時(shí)間戳
1.this.dayjs().unix()
2.this.dayjs('2020-10-04').unix()