浏览代码

语音社区修改

jwyu 2 年之前
父节点
当前提交
c655404c2b
共有 2 个文件被更改,包括 23 次插入5 次删除
  1. 16 4
      pages-voice/addVoice.vue
  2. 7 1
      pages/voice/voice.vue

+ 16 - 4
pages-voice/addVoice.vue

@@ -118,7 +118,7 @@ import {baseApiUrl} from '@/utils/config.js'
 import CryptoJS from '@/utils/crypto.js'
 import uniAsync from "@/utils/uni-async.js"; // uni api async 化
 const recorderManager = wx.getRecorderManager();//录音实例
-const innerAudioContext = uni.createInnerAudioContext();//播放音频实例
+let innerAudioContext = uni.createInnerAudioContext();//播放音频实例
 let TIMER=null//计时器
 export default {
     filters:{
@@ -286,7 +286,7 @@ export default {
         //点击播放\暂停音频
         handlePlayAudio(){
             //没有初始化时
-            if(!innerAudioContext.src){
+            if(!innerAudioContext.src||innerAudioContext.src!=this.temAudio.url){
                 innerAudioContext.src=this.temAudio.url 
                 innerAudioContext.play()
                 return
@@ -317,8 +317,11 @@ export default {
             innerAudioContext.onEnded(()=>{
                 console.log('录音播放自然结束');
                 this.temAudio.curTime=this.temAudio.duration
-                this.temAudio.paused=true
-                innerAudioContext.src=''
+                setTimeout(() => {
+                    this.temAudio.paused=true
+                    innerAudioContext.src=''
+                    this.temAudio.curTime=0
+                }, 300);
             })
             innerAudioContext.onTimeUpdate(()=>{
                 this.temAudio.curTime=parseInt(innerAudioContext.currentTime)
@@ -330,6 +333,9 @@ export default {
             this.recorderStatus='start'
             this.isReset=true
             this.temAudio.url=''
+            this.temAudio.duration=''
+            this.temAudio.curTime=0
+            this.temAudio.paused=true
             this.time=0
             TIMER=null
         },
@@ -471,6 +477,12 @@ export default {
             margin-bottom: 40rpx;
             padding: 0 34rpx;
         }
+        .van-sidebar{
+            flex-shrink: 0;
+        }
+        .van-tree-select__content{
+            overflow-x: hidden;
+        }
         .main-active-class{
             border-color: #E3B377;
         }

+ 7 - 1
pages/voice/voice.vue

@@ -288,7 +288,7 @@ export default {
         handlePlay(item){
             
             //没有初始化时
-            if(this.temAudio.id==0){
+            if(this.temAudio.id==0||this.temAudio.id!=item.BroadcastId){
                 this.listenAudio()
                 this.temAudio.id=item.BroadcastId
                 this.temAudio.duration=item.VoicePlaySeconds
@@ -364,6 +364,12 @@ export default {
             margin-bottom: 40rpx;
             padding: 0 34rpx;
         }
+        .van-sidebar{
+            flex-shrink: 0;
+        }
+        .van-tree-select__content{
+            overflow-x: hidden;
+        }
         .main-active-class{
             border-color: #E3B377;
         }