微信小程序(有始有终,全部代码)开发---跑步App+音乐播放器 Bug修复
开篇语
昨晚发了一篇:
《简年15: 微信小程序(有始有终,全部代码)开发---跑步App+音乐播放器 》
然后上午起来吃完午饭之后,我就准备继续开工的,但是突然的,想要看B站。然后在一股神奇力量的推动下,我找到了它:
《克苏鲁的呼唤 2005 580P中字 经典名篇完美还原》
然后促成了吃完午饭之后,沉迷其中不可自拔。下午写到四点半,才最终完成了我的近四千字的心血之作:
简年16: 初涉《克苏鲁的呼唤》--克苏鲁神话体系入门

可惜明珠暗投:

心灰意冷之下,百无聊赖的打开简书,然后惊喜的发现,这篇文章上了首页今日看点了。这算是一个慰藉?还是很不错的,所以促使了我来写这一篇文章,也就是接着这篇火热的文章的续集,Bug修复 以及更深层次的开发!


正文
本次由于态度没摆正,晚上又跟我的指路明灯学长聊天到八点多。然后又跟我的迷途羔羊说了会话!然后花了半个多小时测评一个免费的VPN (具体情形请去看我的另一篇文章)再来搞开发就是十点半了。时间不是很多,所以调教好的Bug也不多,但是还是有的!
一、音乐界面最上层的滑动banner
原本采用自己写函数的方式来触发,后来改用官方组件--swiper 进行调控:

改进代码如下(github未更新,请读者自行更改)
《---music.wxml》
<swiper class="swiper" indicator-dots="{{indicatorDots}}"
autoplay="{{autoplay}}" interval="{{interval}}" duration="{{duration}}" width="100" height="10">
<swiper-item wx:for="{{imgUrls}}">
<image src="{{item}}" class="slide-image" class="banner" mode="fullToFill"/>
</swiper-item>
</swiper>
《---music.js》
Page(
{
onReady: function (e) {
// 使用 wx.createAudioContext 获取 audio 上下文 context
this.audioCtx = wx.createAudioContext('myAudio')
},
data: {
count:1,
imgUrls: [
'http://159.203.250.111/banner1.png',
'http://159.203.250.111/banner2.png',
'http://159.203.250.111/banner3.png',
],
indicatorDots: false,
autoplay: true,
interval: 2000,
duration: 1000,
},
audioPlay: function () {
this.audioCtx.play()
},
audioPause: function () {
this.audioCtx.pause()
},
audio14: function () {
this.audioCtx.seek(14)
},
audioStart: function () {
this.audioCtx.seek(0)
},
changeIndicatorDots: function(e) {
this.setData({
indicatorDots: !this.data.indicatorDots
})
},
changeAutoplay: function(e) {
this.setData({
autoplay: !this.data.autoplay
})
},
intervalChange: function(e) {
this.setData({
interval: e.detail.value
})
},
durationChange: function(e) {
this.setData({
duration: e.detail.value
})
},
onShareAppMessage: function () {
return {
title: '欢迎使用颜大傻牌音乐播放器',
desc: '将你正在听的歌分享到~~~',
path: '/page/music/music.js'
}
},
})
二、增置了上一首下一首切歌功能
目前还在调试,官方给定的逻辑选择模块我还没吃透。敬请见谅!目前有了一点头绪,代码在下面。(PS:最新消息,制作成功!哈哈。可以流利的播放各种音乐了!!!我还在制作目录,请诸君稍后!)
《---music.wxml》
<block wx:for="{{song}}" wx:key="id">
<block wx:if="{{item.musicid==count}}">
<audio poster="{{item.poster}}" name="{{item.name}}" author="{{item.author}}" src="{{item.src}}" id="myAudio" controls="true" >
<button plain="true" type="primary" bindtap="audioPlay" class="button_anniu">开始播放</button>
<button type="primary" bindtap="audioPause" class="button_anniu">暂停</button>
<button type="primary" bindtap="audio14" class="button_anniu">设置当前播放时间为14秒</button>
<button type="primary" bindtap="audioStart" class="button_anniu">停止</button>
<button bindtap="NextMusic" class="button_anniu"> 上一首 </button>
<button bindtap="LastMusic" class="button_anniu"> 下一首 </button>
</audio>
</block>
</block>
《---music.js》
data: {
song:[{
musicid:1,
poster:'http://159.203.250.111/Carly.png',
name:'Call_Me_Baby',
author: 'Carly_Rae_Jepsen',
src:'http://159.203.250.111/Call_Me_Baby.mp3',
},
{
musicid:2,
poster:'http://159.203.250.111/carly.png',
name:'Good_Time',
author: 'Carly_Rae_Jepsen',
src:'http://159.203.250.111/Good_Time.mp3',
},
{ musicid:3,
poster:'http://159.203.250.111/five1.png',
name:'Maps',
author: 'Marron 5',
src:'http://159.203.250.111/maps.mp3',
},
{ musicid:4,
poster:'http://159.203.250.111five2.png',
name:'Animals',
author: 'Marron 5',
src:'http://159.203.250.111/Animals.mp3',
},
{ musicid:5,
poster:'http://159.203.250.111/five3.png',
name:'Sugar',
author: 'Marron 5',
src:'http://159.203.250.111/Sugar.mp3',
},
],
count:1,
imgUrls: [
'http://159.203.250.111/banner1.png',
'http://159.203.250.111/banner2.png',
'http://159.203.250.111/banner3.png',
],
indicatorDots: false,
autoplay: true,
interval: 2000,
duration: 1000,
},
audioPlay: function () {
this.audioCtx.play()
},
audioPause: function () {
this.audioCtx.pause()
},
audio14: function () {
this.audioCtx.seek(14)
},
audioStart: function () {
this.audioCtx.seek(0)
},
NextMusic: function(e) {
this.setData({
count: this.data.count + 1
})
},
LastMusic: function(e) {
this.setData({
count: this.data.count - 1
})
},
onShareAppMessage: function () {
return {
title: '欢迎使用颜大傻牌音乐播放器',
desc: '将你正在听的歌分享到~~~',
path: '/page/music/music.js'
}
},
})

结束语
小程序算是假期的一个调剂吧,不然可能就真的天天看小说,然后逛逛B站了。然后,我觉得我有必要show一下我的工作环境,最近都有点不想走人家,天天在家写代码了~~~~说好的今天去一个姑奶奶家,可是起床的时候已经是十点多了。外边还在下着蒙蒙小雨~没辙,今天是腐败堕落的一天!!!
但是明天我就要去同学聚会了,在县城,娘的,还要七点多起来搭车!虽然对像是一群男的。但是也还是要洗个澡换件衣服出门!这又把我的起床时间提前到六点半了 ** T_T ** 心塞!争取明天把电脑带上,然后找时间休息的时候继续出文吧!寒假快结束了。保持的好习惯多保留一天是一天啊!
大神的作品就不安利了。我自己写完的这些,我觉得应该比之前说的一些膜拜的作品要优秀了。
真正的主体(想看完整的代码,猛戳下面的链接吧!!)在这:
简年15: 微信小程序(有始有终,全部代码)开发---跑步App+音乐播放器
另外,对于有翻墙外出的需求的朋友,我刚才写了一篇免费180天优秀VPN的文章可供借鉴:
简年17: 免费的VPN 以及几种网络链接的测评
- 
个人宣言
知识传递力量,技术无国界,文化改变生活!
微信小程序(有始有终,全部代码)开发---跑步App+音乐播放器 Bug修复的更多相关文章
- 微信小程序购物商城系统开发系列-目录结构
上一篇我们简单介绍了一下微信小程序的IDE(微信小程序购物商城系统开发系列-工具篇),相信大家都已经蠢蠢欲试建立一个自己的小程序,去完成一个独立的商城网站. 先别着急我们一步步来,先尝试下写一个自己的 ...
- 微信小程序购物商城系统开发系列-工具篇
微信小程序开放公测以来,一夜之间在各种技术社区中就火起来啦.对于它 估计大家都不陌生了,对于它未来的价值就不再赘述,简单一句话:可以把小程序简单理解为一个新的操作系统.新的生态,未来大部分应用场景都将 ...
- 微信小程序购物商城系统开发系列
微信小程序购物商城系统开发系列 微信小程序开放公测以来,一夜之间在各种技术社区中就火起来啦.对于它 估计大家都不陌生了,对于它未来的价值就不再赘述,简单一句话:可以把小程序简单理解为一个新的操作系统. ...
- 从微信小程序到鸿蒙js开发【11】——页面路由
目录: 1.router.push()&wx.navigateTo() 2.router.replace()&wx.redirectTo() 3.router.back()&w ...
- 从微信小程序到鸿蒙js开发【15】——JS调用Java
鸿蒙入门指南,小白速来!0基础学习路线分享,高效学习方法,重点答疑解惑--->[课程入口] 目录:1.新建一个Service Ability2.完善代码逻辑3.JS端远程调用4.<从微信小 ...
- 微信小程序版博客——开发汇总总结(附源码)
花了点时间陆陆续续,拼拼凑凑将我的小程序版博客搭建完了,这里做个简单的分享和总结. 整体效果 对于博客来说功能页面不是很多,且有些限制于后端服务(基于ghost博客提供的服务),相关样式可以参考截图或 ...
- 从微信小程序到鸿蒙js开发【12】——storage缓存&自动登录
鸿蒙入门指南,小白速来!从萌新到高手,怎样快速掌握鸿蒙开发?[课程入口] 正文: 在应用开发时,我们常需要将一些数据缓存到本地,以提升用户体验.比如在一个电商的app中,如果希望用户登录成功后,下次打 ...
- 从微信小程序到鸿蒙js开发【13】——list加载更多&回到顶部
鸿蒙入门指南,小白速来!从萌新到高手,怎样快速掌握鸿蒙开发?[课程入口] 目录: 1.list加载更多 2.list回到顶部 3.<从微信小程序到鸿蒙js开发>系列文章合集 1.list加 ...
- 微信小程序客服消息开发实战:实时在手机上接收小程序客服消息通知,以及在手机上回复
在微信小程序开发中,可以非常方便的集成客服功能,只需要一行代码便可以将用户引导至客服会话界面.这行代码就是: <button open-type="contact" bind ...
随机推荐
- 3.MQTT paho
一.概述 遥测传输 (MQTT) 是轻量级基于代理的发布/订阅的消息传输协议,设计思想是开放.简单.轻量.易于实现.这些特点使它适用于受限环境.例如,但不仅限于此: 网络代价昂贵,带宽低.不可靠. 在 ...
- flex sqlite基本用法
flex sqlite基本用法 页面 <?xml version="1.0" encoding="utf-8"?> <s:WindowedAp ...
- ASP.NET Core Web 资源打包与压缩
本文将介绍使用的打包和压缩的优点,以及如何在ASP.NET Core应用程序中使用这些功能. 概述 在ASP.Net中可以使用打包与压缩这两种技术来提高Web应用程序页面加载的性能.通过减少从服务器请 ...
- PostgreSQL 使用 PreparedStatement 导致查询慢的分析
实验环境: DB is PostgreSQL version 8.2.15 JDK1.8 测试一 使用JDBC查询一个SQL: public static void test1(String url, ...
- django-将数据库数据转换成JSON格式(ORM和SQL两种情况)
最近打算搞一个自动化运维平台,所以在看Django的知识. 在实际项目开发中,遇到一个小问题:前后端发生数据交互主流采用的是JSON.前端传数据到服务器端比较简单,稍微麻烦的是服务器端传JSON到前端 ...
- PYC#1欢乐赛第三题题解
这里是比赛地址:http://tieba.baidu.com/p/2859693237,果然参赛神牛汇集. 第三题题目大意如下: 已知n条二次函数曲线Si(x)=aix^2+bix+ci(ai> ...
- 流行框架angular
---恢复内容开始--- 一.angular是什么 一款非常优秀的前端高级js框架,由谷歌团队负责开发 angular是通过新的属性和表达扩展了html angular可以构建一个单一页面应用程序(s ...
- windows 10 下使用 binwalk
刚接触CTF没什么经验,菜鸟一只很多题不会做,就在网上看大佬写的Write up.发现经常会用到一个小工具--binwalk.binwalk在kali系统里是一个自带的工具,但windows可没有.之 ...
- Linux - 请允许我静静地后台运行
h1,h2,h3,h4,h5,h6,p,blockquote { margin: 0; padding: 0 } body { font-family: "Helvetica Neue&qu ...
- MySQL学习笔记(三)
--回顾 字段类型(列类型):数值型,时间日期型和字符串类型 数值型:整型和小数型(浮点型和定点型) 时间日期型:datetime,date,time,timestamp,year 字符串类型:定长, ...