89 lines
1.7 KiB
JavaScript
89 lines
1.7 KiB
JavaScript
|
// pages/course/courseOrderList/courseOrderList.js
|
||
|
Page({
|
||
|
/**
|
||
|
* 页面的初始数据
|
||
|
*/
|
||
|
data: {
|
||
|
items: [null, null, null],
|
||
|
countDown: 30 * 60 , // 初始倒计时
|
||
|
countDownStr: '' // 用于在视图中渲染的倒计时文本
|
||
|
},
|
||
|
|
||
|
/**
|
||
|
* 生命周期函数--监听页面加载
|
||
|
*/
|
||
|
onLoad(options) {
|
||
|
this.startCountDown();
|
||
|
},
|
||
|
|
||
|
/**
|
||
|
* 生命周期函数--监听页面初次渲染完成
|
||
|
*/
|
||
|
onReady() {},
|
||
|
|
||
|
/**
|
||
|
* 生命周期函数--监听页面显示
|
||
|
*/
|
||
|
onShow() {},
|
||
|
|
||
|
/**
|
||
|
* 生命周期函数--监听页面隐藏
|
||
|
*/
|
||
|
onHide() {
|
||
|
clearInterval(this.intervalId);
|
||
|
},
|
||
|
|
||
|
/**
|
||
|
* 生命周期函数--监听页面卸载
|
||
|
*/
|
||
|
onUnload() {
|
||
|
clearInterval(this.intervalId);
|
||
|
},
|
||
|
|
||
|
/**
|
||
|
* 启动倒计时
|
||
|
*/
|
||
|
startCountDown() {
|
||
|
this.updateCountDownStr();
|
||
|
this.intervalId = setInterval(() => {
|
||
|
let cd = this.data.countDown;
|
||
|
if (cd <= 1) {
|
||
|
clearInterval(this.intervalId);
|
||
|
this.setData({
|
||
|
countDown: 0,
|
||
|
countDownStr: '00分00秒'
|
||
|
});
|
||
|
} else {
|
||
|
cd--;
|
||
|
this.setData({ countDown: cd });
|
||
|
this.updateCountDownStr();
|
||
|
}
|
||
|
}, 1000);
|
||
|
},
|
||
|
|
||
|
/**
|
||
|
* 更新倒计时显示字符串
|
||
|
*/
|
||
|
updateCountDownStr() {
|
||
|
const minutes = Math.floor(this.data.countDown / 60);
|
||
|
const seconds = this.data.countDown % 60;
|
||
|
const str = `${minutes}分${seconds < 10 ? '0' + seconds : seconds}秒`;
|
||
|
this.setData({ countDownStr: str });
|
||
|
},
|
||
|
|
||
|
/**
|
||
|
* 页面相关事件处理函数--监听用户下拉动作
|
||
|
*/
|
||
|
onPullDownRefresh() {},
|
||
|
|
||
|
/**
|
||
|
* 页面上拉触底事件的处理函数
|
||
|
*/
|
||
|
onReachBottom() {},
|
||
|
|
||
|
/**
|
||
|
* 用户点击右上角分享
|
||
|
*/
|
||
|
onShareAppMessage() {}
|
||
|
});
|