微信小程序音频播放失败:TypeError: Cannot read property ‘duration‘ of undefined

报错截图

最下面这个this.setData()报错可不用理会,是this取值的问题

解决

  1. 需要播放和暂停功能时,需要把audio以及他的src放在Page外面。
  2. 不能缺少 audioCtx.onPlay() 和 audioCtx.onError()两个方法,且需要放在play()方法之前
  3. 如果在wx.createInnerAudioContext()添加了 {useWebAudioImplement:true},把它去掉。
javascript 复制代码
//需要播放暂停音频功能时,需要将这两个变量放在 Page()上面
let audioCtx=wx.createInnerAudioContext()
audioCtx.src='http://ws.stream.qqmusic.qq.com/M500001VfvsJ21xFqb.mp3' //填入你自己的音频链接
Page({
     data: {
          isPlay: false,
     },
     playMusic(){
          audioCtx.onPlay(()=>{
               console.log("开始播放");
          })
           audioCtx.onError((res)=>{
             wx.showToast({
                title: '音乐播放错误',
                icon: 'error',
                duration: 3000
              })
           })
           let isPlay = !this.data.isPlay //控制播放和暂停的变量
           this.setData({
                isPlay:isPlay
               })
          if(isPlay){
               audioCtx.play()
               audioCtx.loop = true;
          }else{
               audioCtx.pause()
          }
     },
     },
     onLoad() {
          this.playMusic(); //加载完毕,开始播放
     },
});
相关推荐
殷忆枫10 分钟前
BOA服务器下实现视频回放功能(CGI+软链接方案)
服务器·okhttp·音视频
维双云20 分钟前
专业开发小程序公司有哪些:从项目交付能力判断服务商
小程序
小猴子爱上树22 分钟前
跨境电商图片翻译工具,跨马批量处理视频字幕与抠图
python·音视频
硅谷秋水22 分钟前
ImageWAM:世界-动作模型真的需要视频生成,还是只需要图像编辑?
人工智能·深度学习·计算机视觉·语言模型·机器人·音视频
show43331 分钟前
2026多格式导出技术方案:小程序端免费TXT/Word/SRT生成实践
小程序·word
青花锁1 小时前
Bright Data Video Search for VLA:2026年如何用视频大模型追踪物流分拣掉料问题
大模型·视觉检测·音视频·视频检测
OpenCutAI14 小时前
无字幕视频怎么翻译?跨境出海视频本地化实操指南
音视频
维双云15 小时前
社区生鲜小程序怎么做?4个经营环节。
小程序·零售
科技小E16 小时前
国标GB28181视频平台EasyGBS监控为什么会“瞎”:视频质量诊断EasyVQD如何揪出黑屏卡顿偏色
大数据·人工智能·音视频
2601_9499506318 小时前
成绩提升不靠盲目刷题:用练题簿找准真正的薄弱知识点
学习·小程序·刷题·小程序推荐