vue dayjs
// main.js
// 全局注册dayjs
const dayjs = require('dayjs')
const isBetween = require('dayjs/plugin/isBetween') // 引入插件
dayjs.extend(isBetween)
Vue.prototype.$dayjs = dayjs
checkMonthTool() {
const startTime = this.$dayjs(开始时间).valueOf() // 开始时间:时间戳
const endTime = this.$dayjs(结束时间).valueOf() // 结束时间:时间戳
const startDay = this.$dayjs(startTime).format('DD') // 开始时间的日期:时间戳
const chooseDay = parseFloat(选择的日期) // 选择的日期:Number
const chooseDayFormat = chooseDay < 10 ? '0' + chooseDay : chooseDay // 格式化<10的数字:String
const daysInMonth = this.$dayjs(startTime).daysInMonth() // 月天数:Number
let jointTargetTime
if (chooseDay > daysInMonth) {
const add1 = this.$dayjs(startTime).add(1, 'month').format('YYYY-MM') + '-' + chooseDayFormat
if (this.$dayjs(add1).isBefore(endTime)) {
return true
} else {
this.$message.error(`起止时间段内没有${chooseDay}号!`)
return false
}
}
if (chooseDay > startDay) {
jointTargetTime = this.$dayjs(startTime).format('YYYY-MM') + '-' + chooseDayFormat
return this.$dayjs(jointTargetTime).isBetween(startTime, endTime, null, '[]')
} else if (chooseDay < startDay) {
jointTargetTime = this.$dayjs(startTime).add(1, 'month').format('YYYY-MM') + '-' + chooseDayFormat
return this.$dayjs(jointTargetTime).isBetween(startTime, endTime, null, '[]')
} else {
return true
}
},