【需求】
App首页放置一个实时时间,效果图如下,每秒跳一下:
【解决】
- 在onShow()里面使用定时器获取当前时间;
- 在onHide()里面进行定时器清除。
示例代码如下:
// --
<view class="nowTime">{{nowTime}}</view>
<view class="nowDate">{{nowDate}}</view>
// --
data () {
return {
nowTime: '',
nowDate: '',
getTimeDate: null,
};
},
// --
onShow() {
this.getNowTimeDate()
},
onHide(){
// 清除定时器
clearInterval(this.getTimeDate)
},
methods: {
// 获取当前实时时间
getNowTimeDate(){
this.getTimeDate = setInterval( ()=> {
let date = new Date()
let year = date.getFullYear()
let month = (date.getMonth() + 1).toString().padStart(2, '0')
let day = (date.getDate()).toString().padStart(2, '0')
let hour = (date.getHours()).toString().padStart(2, '0')
let minute = (date.getMinutes()).toString().padStart(2, '0')
let second = (date.getSeconds()).toString().padStart(2, '0')
this.nowTime = `${hour} : ${minute} : ${second}`
this.nowDate = `${year}年${month}月${day}日`
}, 1000)
},
}
效果如下: