element ui 周选择器真的很想吐槽 选择的时间周格式只支持format不支持value-format,所以我们打印出来的还是日期,而不是页面展示的数据,为此找了很多处理周格式的方法,但是计算方式又不一样,最后还是处理成时间段来传值。如果大家有好的处理方法,欢迎在下面留言!
// 时间戳转换为时间
timestampToTime(timestamp) {
console.log(timestamp);
var date = new Date(timestamp); //时间戳为10位需*1000,时间戳为13位的话不需乘1000
let Y = date.getFullYear() + "-";
let M =
(date.getMonth() + 1 < 10
? "0" + (date.getMonth() + 1)
: date.getMonth() + 1) + "-";
let D = date.getDate() + " ";
return Y + M + D;
},
// 改变日期
changeWeek(val) {
//val===> Mon Nov 09 2020 00:00:00 GMT+0800 (中国标准时间)
let todayDay = val ? new Date(val) : new Date();
let todayOfWeek = todayDay.getDay();
let todayOfmonth = todayDay.getMonth();
let todayOfDate = todayDay.getDate();
let spendDay = 1; // 这里也可以直接设置成零
if (todayOfWeek != 0) {
spendDay = 7 - todayOfWeek-1; //开始时间到结束时间还有几天
}
// 86400000为一天的毫秒数
this.startTimeNum = todayDay.valueOf() - (6 - spendDay) * 86400000; //开始时间时间戳
this.endTimeNum = todayDay.valueOf() + spendDay * 86400000; //结束时间时间戳
let startTimeStr = this.timestampToTime(this.startTimeNum); // 时间戳转字符串
let endTimeStr = this.timestampToTime(this.endTimeNum);
this.weekTime = startTimeStr + " - " + endTimeStr; // 选择的范围
console.log(this.weekTime);
},
this指向的数据大家就自行在data里面定义吧^ _ ^!
参考文献来自Fluoxetine.