From 338ad19ee45b5380a0d8433cbbce2a727a576dfa Mon Sep 17 00:00:00 2001 From: yiming <m13691596795@163.com> Date: 星期五, 19 四月 2024 17:34:36 +0800 Subject: [PATCH] bug2 --- packageDomain/pages/resourceDetails/myAudio/index.js | 147 +++++++++++++++++++++++++++++++----------------- 1 files changed, 95 insertions(+), 52 deletions(-) diff --git a/packageDomain/pages/resourceDetails/myAudio/index.js b/packageDomain/pages/resourceDetails/myAudio/index.js index e3ad275..7000199 100644 --- a/packageDomain/pages/resourceDetails/myAudio/index.js +++ b/packageDomain/pages/resourceDetails/myAudio/index.js @@ -59,6 +59,7 @@ // 杞寲鏃堕棿 format(time) { + let minute = Math.floor(time / 60); let second = Math.floor(time % 60); minute = minute < 10 ? ("0" + minute) : minute; @@ -86,6 +87,17 @@ * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍔犺浇 */ onLoad(options) { + + wx.setNavigationBarTitle({ + + title: '璧勬簮璇︽儏-闊抽' + + }); + + + + + const systInfo = wx.getSystemInfoSync(); const menu = wx.getMenuButtonBoundingClientRect(); // 鑳跺泭淇℃伅 const navBarHeight = (menu.top - systInfo.statusBarHeight) * 2 + menu.height; // 瀵艰埅鏍忛珮搴� @@ -96,11 +108,16 @@ bookId: options.bookId, bookName: options.bookName, cmsId: options.cmsId, - parentName: options.parentName, parentProductLinkPath: options.parentProductLinkPath, productLinkPath: options.productLinkPath, formPath: options.formPath }) + + if (options.parentName !== "鏁欏璧勬簮" && options.parentName !== "浜戝涔�") { + this.setData({ + parentName: options.parentName, + }) + } this.resourceDetailsData() this.getNoteList() console.log(options, 'options'); @@ -139,6 +156,9 @@ /** * 鐢熷懡鍛ㄦ湡鍑芥暟--鐩戝惉椤甸潰鍗歌浇 + * + * 閫�鍑洪〉闈㈡椂鍊欒皟鐢ㄧ殑 + * */ onUnload() { // this.setData({ @@ -152,12 +172,14 @@ // myAudio.src = '' // myAudio.destroy() - // this.setData({ - // myAudioPos: '', - // isplay: false, //鏄惁榛樿鎾斁, - // myAudioCurrent: '00:00', // 褰撳墠鎾斁杩涘害 - // showData: '', - // }); + this.setData({ + // myAudioPos: '', + isplay: false, //鏄惁榛樿鎾斁, + myAudioCurrent: '00:00', // 褰撳墠鎾斁杩涘害 + showData: '', + speed: 1.0, + }); + myAudio.playbackRate = this.data.speed; // 鍋滄闊抽鎾斁 myAudio.stop(); // 閿�姣� InnerAudioContext 瀹炰緥 @@ -233,7 +255,6 @@ wx.navigateBack(); }, resourceDetailsData() { - let datas = '' let query = { path: '*', queryType: '*', @@ -241,7 +262,6 @@ cmsPath: this.data.parentProductLinkPath, itemFields: { SysType: 'CmsFolder', - // 璧勬簮绫诲瀷锛岃瘯璇绘枃浠讹紝鏄惁鍏佽涓嬭浇绛夊弬鏁� selectType: [], freeFile: [], file: [], @@ -258,59 +278,58 @@ size: 999 } } + app.MG.store.getProductDetail(query).then(res => { + let selectedId = -1; // 鍒濆鍖栭�変腑椤圭储寮� + let showDataUrl = ''; + let titleName = ''; + res.datas.cmsDatas[0].datas.forEach((item, index) => { if (item.selectType === "audio" || item.learnSelectType === "audio") { - this.data.threeLeveData.push(item) - this.setData({ - threeLeveData: this.data.threeLeveData - }) + this.data.threeLeveData.push(item); + } + }); + // console.log(this.data.threeLeveData); + this.data.threeLeveData.forEach((items, indexs) => { + if (this.data.productLinkPath == items.productLinkPath) { + selectedId = indexs; } - this.data.threeLeveData.forEach((items, index) => { // 淇敼姝ゅ娣诲姞index鍙傛暟 - if (this.data.productLinkPath == items.productLinkPath) { - datas = items - let selectedIndex = index; // 瀛樺偍閫変腑椤圭殑绱㈠紩 - this.setData({ - selectedId: selectedIndex // 璁剧疆閫変腑椤圭殑绱㈠紩 - }); - } - - }); - if (this.data.formPath == 'jsek_cloudLearning') { - // 杩欓噷澶勭悊浜戝涔犵殑 - this.setData({ - showData: app.config.requestCtx + '/file/api/ApiDownloadForAuthorize?md5=' + datas.protectedFile + '&token=' + wx.getStorageSync(app.config.tokenKey), - titleName: datas.name - }) - this.pubulicPlayFun() - } else { - this.setData({ - showData: app.config.requestCtx + '/file/api/ApiDownload?md5=' + datas.file, - titleName: datas.name - }) - this.pubulicPlayFun() - } - }) - this.data.threeLeveData.forEach((item) => {}) - setTimeout(() => { - this.setData({ - loading: false, - hidden: false - }) - }, 3000) + if (selectedId !== -1) { + let datas = this.data.threeLeveData[selectedId]; - }) + if (this.data.formPath == 'jsek_cloudLearning') { + showDataUrl = app.config.requestCtx + '/file/api/ApiDownloadForAuthorize?md5=' + datas.protectedFile + '&token=' + wx.getStorageSync(app.config.tokenKey); + } else { + console.log(datas); + showDataUrl = datas.file ? app.config.requestCtx + '/file/api/ApiDownload?md5=' + datas.file : app.config.requestCtx + '/file/api/ApiDownload?md5=' + datas.freeFile + } + titleName = datas.name; + } + + this.setData({ + threeLeveData: this.data.threeLeveData, + selectedId: selectedId, + showData: showDataUrl, + titleName: titleName, + loading: false, + hidden: false + }); + this.pubulicPlayFun(); + + }); }, - onVideo(e) { + // myAudio.destroy(); + this.setData({ myAudioCurrent: '00:00', myAudioPos: '', isplay: false }) + const item = e.currentTarget.dataset.item if (this.data.showData != '') { this.setData({ @@ -329,10 +348,15 @@ this.pubulicPlayFun() } else { + console.log(item.file, 'item.file'); + console.log(item.freeFile, 'item.freeFile'); + this.setData({ - showData: app.config.requestCtx + '/file/api/ApiDownload?md5=' + item.file + showData: item.file ? app.config.requestCtx + '/file/api/ApiDownload?md5=' + item.file : app.config.requestCtx + '/file/api/ApiDownload?md5=' + item.freeFile }) this.pubulicPlayFun() + console.log(this.data.showData, 'showData'); + } } } @@ -596,26 +620,39 @@ }, // 鎾斁鍏叡浠g爜 pubulicPlayFun() { + + // debugger + console.log(myAudio.src, 'myAudio.src'); + console.log(this.data.showData, 'this.data.showData'); + this.setData({ + speed: 1.0, + }) + myAudio.playbackRate = this.data.speed; + myAudio.src = this.data.showData + // console.log(myAudio.src); // 鍦╫nCanplay閲岃幏鍙栧苟璁剧疆闊抽鏃堕暱鍜屾挱鏀捐繘搴� myAudio.onCanplay(() => { + + + myAudio.duration; //蹇呴』鍐欙紝涓嶇劧鑾峰彇涓嶅埌 - setTimeout(() => { - this.setData({ myAudioDuration: this.format(myAudio.duration), myAudioCurrent: this.format(myAudio.currentTime) }); - }, 100); }); + + console.log(this.data.myAudioDuration); + console.log(this.data.myAudioCurrent); // 鎾斁瀹屾垚澶勭悊锛屾寜閽彉涓�涓� myAudio.onEnded((res) => { this.setData({ - isplay: false + isplay: true }) }); @@ -627,8 +664,13 @@ myAudioPos: myAudio.currentTime / myAudio.duration * 100, myAudioCurrent: this.format(myAudio.currentTime), myAudioDuration: this.format(myAudio.duration), + }); }) + console.log(this.data.myAudioCurrent); + console.log(this.data.myAudioDuration); + console.log(this.data.myAudioPos); + myAudio.play(); }, @@ -736,6 +778,7 @@ this.setData({ myAudioPos: position, myAudioCurrent: this.format(currentTime) + }) }, -- Gitblit v1.9.1