• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

小程序播放语音之wx.createInnerAudioContext() - 转

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

我刚开始用wx.createInnerAudioContext(),是将此方法写在了我的播放语音函数里,发现怎么暂停和取消都不好使

 

经过踩坑,得出结论!!!

1.将此方法声明在onLoad中,(如果声明在page外部,每次进此页面执行语言操作都会多次执行。)

  

2.将api方法也都声明在onLoad中(不需要一直去创建回调事件)

 

 3.播放语言操作

 /**
   * 播放音频
   */
  playAudio(e) {
    const _this = this;
    wx.stopVoice()
    showToast('text', '播放中', {
      duration: 120 * 1000,
      mask: true
    })
    let audio = e.currentTarget.dataset.audio;
    let audioSave = _this.data.audioSave;
    console.log('audio:',audio.name,'  audioSave:',audioSave)
    if (audio.ext === 'mp3') { // 小程序发送的
      this.data.audioContext.src = audio.url
    } else {
      this.data.audioContext.src = audio.mp3Url
    }
    if (audio.name == audioSave) {
      console.log('播放同一个语音,将其暂停')
      this.data.audioContext.pause();
      //初始化
      this.setData({
        audioSave: ''
      })
    } else{
      //不是同一个语音 直接播放其它,将此次语音记录
      this.data.audioContext.play()
      this.setData({
        audioSave: audio.name
      })
    }
  },

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
钉钉小程序可输入的下拉框发布时间:2022-07-18
下一篇:
浅谈微信小程序对于房地产行业的影响发布时间:2022-07-18
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap