微信开发小程序音乐循环播放怎么用

微信开发小程序音乐循环播放怎么用,第1张

背景:数组可以可以存储其音频地址,让其进行顺序播放和同步播放有两种方式

顺序播放

1.使用定时器进行设置传递地址时候,下一个等待音频的播放时间以后在传递地址,这个地方看似没有问题,实际上还是有很大问题的,因为在传递的时候如果数据量大,你就会发现会出现同步播放的情况,因为那个定时和你的音频时间会有误差,数据越大,越明显,还有就是会数组地址更新,这又是问题,更新以后传递过去定时器重新给其定时,这个又给串了,笔者兄大就遇到这个情况了,跳了半天。

2.就是下面的方法,我本身是过几秒中我的数组会更新地址,这样会导致程序整体运行一次,可以在音频播放完才运行函数设置一个状态,开始状态设置一个true,将数组传递过去,然后关闭通道,改变状态进行设置flase的情况,然后再可以在音频播放完才运行函数里设置,但播放完到这个数组最后一个音频以后,改变为true,羡正竖这个时候再接收新的更新后的数组,这样不会出现同步播清稿发的情况。

同步播放

其实就是直接将其地址传递到InnerAudioContext.src,不管播放时间,直接for循环就可以了。

//第一层循环

<view wx:for="{{arr}}" wx:key="index">

    <view>{{item.name}}</view>

    //第二层循环,修改item、index名称

    <view wx:for="{{item.process}}" wx:for-item="itema" wx:for-index="indexa" wx:key="indexa">

        // 判断是哪种结构

        <block wx:if="{{itema.goods_name}}">

            <view>{{itema.goods_name}}</view>

   岩隐     </block>

        <粗禅厅block wx:else>

          袭纤  <view>{{itema.type}}</view>

            //第三层判断是否是数组

            <block wx:if="{{itema.state && itema.state[0] && itema.state[0].time}}">

                <view wx:for="{{itema.state}}" wx:for-item="itemb" wx:for-index="indexb" wx:key="indexb">{{itemb.time}}</view>

            </blcok>

            <blcok wx:else>

                <view>{{itema.state}}</view>

            </blcok>

        </block>

    </view>

</view>


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12378688.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存