项目中有时候时间插件需要默认展示当月开始结束日期或者本周日期
<el-form-item label="开始时间"
required>
<el-date-picker type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
v-model="queryParmas.startTime"
placeholder="选择时间"
style="width: 100%;"></el-date-picker>
</el-form-item>
<el-form-item label="结束时间"
required>
<el-date-picker type="datetime"
value-format="yyyy-MM-dd HH:mm:ss"
v-model="queryParmas.endTime"
placeholder="选择时间"
style="width: 100%;"></el-date-picker>
</el-form-item>
在utils文件夹里面新建js写入公共方法
// 获取本周起始日期 不带时分秒
export function WeekDate() {
var weekStartDate = new Date(getY(), getM(), getD() - getW() + 1);
var weekEndDate = new Date(getY(), getM(), getD() + (7 - getW()));
return [
parseTime(weekStartDate, "{y}-{m}-{d}"),
parseTime(weekEndDate, "{y}-{m}-{d}")
];
}
// 获取上周起始日期 不带时分秒
export function lastWeekDate() {
//一天的毫秒数
var millisecond = 1000 * 60 * 60 * 24;
//减去的天数
var minusDay = getW() != 0 ? getW() - 1 : 6;
//获得当前周的第一天
var currentWeekDayOne = new Date(getT() - millisecond * minusDay);
//上周最后一天即本周开始的前一天
var priorWeekLastDay = new Date(currentWeekDayOne.getTime() - millisecond);
//上周的第一天
var priorWeekFirstDay = new Date(
priorWeekLastDay.getTime() - millisecond * 6
);
return [priorWeekFirstDay, priorWeekLastDay];
}
// 获取当月起始日期
export function monthDate() {
var month = getM() + 1;
month < 10 ? (month = "0" + month) : (month = month);
var lastDay = new Date(getY(), month, 0);
var dateArr = [
getY() + "-" + month + "-01",
getY() + "-" + month + "-" + lastDay.getDate()
];
return dateArr;
}
// 获取上月起始日期
export function lastMonthDate() {
var dateArr = [
parseTime(new Date(getY(), getM() - 1, 1), "{y}-{m}-{d}"),
parseTime(new Date(getY(), getM(), 0), "{y}-{m}-{d}")
];
return dateArr;
}
// 年月日
export function formatDates(cellValue) {
if (cellValue == null || cellValue == "") return "";
var date = new Date(cellValue);
var year = date.getFullYear();
var month =
date.getMonth() + 1 < 10
? "0" + (date.getMonth() + 1)
: date.getMonth() + 1;
var day = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
return year + "-" + month + "-" + day;
}
在main里面全局引入
页面中使用:
mounted(){
this.queryParmas.startTime = this.WeekDate()[0]
this.queryParmas.endTime= this.WeekDate()[1]
},