data() {
return {
currentDate: null,
currentTime: null,
currentWeekday: null,
timer: null,
weekdays: ['周日', '周一', '周二', '周三', '周四', '周五', '周六'],
}
},
created() {
this.getCurrentDateTime()
this.startTimer()
},
methods: {
getCurrentDateTime() {
const currentDate = new Date()
// 格式化日期:YYYY-MM-DD
const year = currentDate.getFullYear()
const month = String(currentDate.getMonth() + 1).padStart(2, '0')
const day = String(currentDate.getDate()).padStart(2, '0')
this.currentDate = `${year}-${month}-${day}`
// 格式化时间:HH:mm:ss
const hours = String(currentDate.getHours()).padStart(2, '0')
const minutes = String(currentDate.getMinutes()).padStart(2, '0')
const seconds = String(currentDate.getSeconds()).padStart(2, '0')
this.currentTime = `${hours}:${minutes}:${seconds}`
// 获取星期几
this.currentWeekday = this.weekdays[currentDate.getDay()]
},
startTimer() {
this.timer = setInterval(() => {
this.getCurrentDateTime()
}, 1000) //每秒钟更新一次
},
beforeDestroy() {
clearInterval(this.timer)
},//清除定时器,以避免内存泄露。
},