一. Vue 中如何获取当前时间,并实时更新当前时间
data
生命周期中定义两个变量data() {
return {
times:'',
};
},
created
生命周期中调用当前时间created() {
this.getTimes()
},
methods: {
getTimes(){
setInterval(this.getTimesInterval, 1000);
},
getTimesInterval:function() {
let _this = this;
let year = new Date().getFullYear();
let month = new Date().getMonth() + 1;
let day = new Date().getDate();
let hours = new Date().getHours();
let minutes = new Date().getMinutes();
let seconds = new Date().getSeconds();
if (hours < 10) {
hours = "0" + hours;
}
if (minutes < 10) {
minutes = "0" + minutes;
}
if (seconds < 10) {
seconds = "0" + seconds;
}
_this.times = year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds;
}
}
- 在Vue实例销毁前,
beforeDestroy
生命周期中清除定时器beforeDestroy() {
if (this.times) {
clearInterval(this.getTimesInterval);
}
},
二. 一个实例
<template>
<div>
{{times}}
</div>
</template>
<script>
export default {
data() {
return {
times:'',
};
},
created() {
this.getTimes()
},
beforeDestroy() {
if (this.times) {
clearInterval(this.getTimesInterval);
}
},
methods: {
getTimes(){
setInterval(this.getTimesInterval, 1000);
},
getTimesInterval:function() {
let _this = this;
let year = new Date().getFullYear();
let month = new Date().getMonth() + 1;
let day = new Date().getDate();
let hours = new Date().getHours();
let minutes = new Date().getMinutes();
let seconds = new Date().getSeconds();
if (hours < 10) {
hours = "0" + hours;
}
if (minutes < 10) {
minutes = "0" + minutes;
}
if (seconds < 10) {
seconds = "0" + seconds;
}
_this.times = year + "-" + month + "-" + day + " " + hours + ":" + minutes + ":" + seconds;
},
}
};
</script>
<style scoped>
</style>