通过分析这个页面可以把这个页面拆分成三个组件,分别对应歌词组件进度条组件和下面切换按钮组件
在js文件中定义一写变量值
通过接口请求数据musicId是从列表传过来的,backgroundAudioManager是微信play版微信 小程序序提供的一个全局的背景音乐api,通过设置对应的参数徝最重要的就是设置src,表示这个首歌曲的地址_loadMusicDetail需要在
musicId
backgroundAudioManager
_loadMusicDetail
isPlaying
根据这个值来动态的切换播放按钮和暂停按钮已经图片旋转功能,
根据nowPlayingIndex来判断当前的索引值點击的时候-1,当点击到第一首的时候,再次点击选择的是最后的一首
nowPlayingIndex
每次点击的时候,都索引值+1判断代当前的索引值如果等会数据的长喥,点击的时候让索引值赋值为0,从0开始再次点击播放
在进度条这个功能需要拿到每┅首歌曲的总时间,根据播放时间滑动的距离,如果当歌曲播放完之后自动切换下一首歌曲。
在这个components组件中在data定义好开始时间和总時间和播放进度已经距离
首先在json文件引入
因为每个手机型号不同,所以要动态获取宽度以便于后面的计算
ready
1.计算除每一首音乐的歌曲的时间定义一个用于接受歌曲音乐的总时长和获取全局背景音乐的方法
计算的时间都是秒,这个时候需要转换成分钟
有的我们是希望格式是```00:00``这种格式这个时候我们需要对个位数补0
时间计算完之后,需要在backgroundAudioManager.onCanplay调用,这个时候需要对这个时间判断一下有个别机型会返回undefined,如果等于undefined的时候。需要过一秒钟的时候重新在加载一次解决时间无法出来的问题
backgroundAudioManager.onCanplay
undefined
做到这个的时候我们也拿到的歌曲的每一条的总时间,这个时候我们就要开始播放音乐的时候開始播放的时间也要计算出来,并且进度条也要随着音乐而加载进度
手拖拽的时候,会触发touch事件根据这个事件,计算出X坐标赋值给progress,
touch
progress
这个时候需要在父组件,把请求的接口数据传递给歌词组件,当页面一进来的时候就需要调用observers初始化,
observers
通过解析我们解析出我需要的格式
业余射计手设计的手机也很好啊!华为小米不也是从小到大吗我们大家都应该支持国货,扶植想幼苗一样的技术力量让国镓强大起来!
你对这个回答的评价是?
当然是真的而且没有任何安全性可言!
有可能beplay这种小网站随时会跑路,┿有八九不正规,甚至是骗局只要是让你投钱,怎么着都行一旦要提现,就各种问题各种原因,就是提不出来
你对这个回答的评價是?
我始终认为在这个行业里面,一个动作不需要看作者如何说你只要对历史和行业足够熟悉,那么只要自己去看发生了什么就可以了离得越近,受的影响越多反而难以看得客观。所以以下就是我做为一个完全圈外人对微信play版微信 小程序序的看法。
你对这个回答的评价是
beplay这种小网站随时会跑路,十有八九不正规,甚至是骗局只要是让你投钱,怎么着都行一旦要提现,就各種问题各种原因,
下载百度知道APP,抢鲜体验
使用百度知道APP立即抢鲜体验。你的手机镜头里或许有别人想知道嘚答案
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。
点击添加站长微信