const utils = require("../../../utils/utils"); // subpackage/teacher/resource-detail/resource-detail.js Page({ /** * 页面的初始数据 */ data: { title: '口令', value: '00:00', duration: '00:00', aduio:null, data:{}, isPlay:false, percent:0, isReload:false,//是否重复播放 isShow:false,//是否展示弹窗 }, /** * 生命周期函数--监听页面加载 */ onLoad(options) { console.log(JSON.parse(options.data)) this.setData({ data: JSON.parse(options.data), title: JSON.parse(options.data).id == 1 ? '口令' : JSON.parse(options.data).id == 2 ? '音乐' : '视频' }) this.loadAudio(JSON.parse(options.data).resourceUrl) }, loadAudio(url) { this.audioCtx = wx.createInnerAudioContext(); this.audioCtx.src = url this.audioCtx.onCanplay(() => { this.audioCtx.duration this.audioCtx.currentTime console.log(this.audioCtx.currentTime) console.log(this.audioCtx.duration) console.log(this.audioCtx.currentTime) this.setData({ value: utils.formatTimeStr(this.audioCtx.currentTime), duration: utils.formatTimeStr(this.audioCtx.duration), }) }) this.audioCtx.onTimeUpdate(() => { console.log('在播放咯') console.log(this.data.percent) console.log('在播放咯') this.audioCtx.duration this.audioCtx.currentTime this.setData({ value: utils.formatTimeStr(this.audioCtx.currentTime), duration: utils.formatTimeStr(this.audioCtx.duration), percent:((this.audioCtx.currentTime/this.audioCtx.duration)*100).toFixed(0) }) }) }, btnCilck(){ console.log(this.audioCtx.src) if(this.data.isPlay){ this.audioCtx.pause() this.setData({ isPlay:false }) }else{ this.audioCtx.play() this.setData({ isPlay:true }) } }, showList(){ this.setData({ isShow:true }) }, reload(){ wx.showToast({ title: this.data.isReload ?'列表循环':'单曲循环', icon:'none' }) this.audioCtx.loop = true this.setData({ isReload:!this.data.isReload }) }, /** * 生命周期函数--监听页面初次渲染完成 */ onReady() { }, /** * 生命周期函数--监听页面显示 */ onShow() { }, /** * 生命周期函数--监听页面隐藏 */ onHide() { }, /** * 生命周期函数--监听页面卸载 */ onUnload() { if(this.audioCtx){ this.audioCtx.stop(); if(this.audioCtx.destory){ this.audioCtx.destory(); } } }, /** * 页面相关事件处理函数--监听用户下拉动作 */ onPullDownRefresh() { }, /** * 页面上拉触底事件的处理函数 */ onReachBottom() { }, /** * 用户点击右上角分享 */ onShareAppMessage() { } })