vue 音频播放功能

 //结构
 <audio id="audioID" ref="audio" class="aud"  @ended="audioEnded">
    <source :src="audioUrl" />
 </audio>
//数据
data() {
  return {
    audioUrl:'',//音频资源
    audioOpen:false
  }
},

methods: {
	// 音频按钮
    auditionFun() {
      if(!this.audioOpen){
        console.log("进入播放");
        this.ringPreview()
      }else{
        console.log("进入暂停");
        this.pause()
      }
    },
    //监听播放完成的回调
    audioEnded(){
      this.audioOpen=false
      console.log('end')
    },
    // 播放音频
    play(){
       this.audioOpen=true
       this.$refs.audio.play();
    },
    // 暂停播放
    pause(){
       this.audioOpen=false
       this.$refs.audio.pause();
    },
    // 音频合成语音接口
    ringPreview() {
      data.txt = this.textArea //合成语音文本
      ringPreview(data)
        .then(res => {
          console.log('音频接口', res)
          if (res.success) {
            document.querySelector('#audioID').setAttribute("src", res.data.url) //使用这种方式赋值视频资源
            this.play() //播放
          }
        })
        .catch(err => {
          console.log('err', err)
        })
    }
}

你可能感兴趣的:(vue相关,vue.js,音视频,前端)