Vuejs仿网易云音乐实现听歌及搜索功能


Posted in Javascript onMarch 30, 2017

前言

前端时间学了vue,一开始看了vue1.0,后来实在觉得技术总得实践,就直接上手vue2.0。然后花了将近一周时间做了一个网易云音乐的小项目。一开始觉得项目比较小,没必要用vuex所以就没有使用,但是后来发现数据流传输有点麻烦,后续会使用vuex。

技术栈

vue+vue-router(核心框架)
better-scroll(使移动端滑动体验更加流畅)
vue-lazyload(用户图片懒加载)
nprogress(用于加载过渡)
 axios(请求)

功能分析与设计

首先我先参考了现有的一些APP的设计与开发,然后决定做了歌单和搜索两个模块,本身主要以前端为主,后端代码并没有研究,这里要感谢这位同学写的API。如果你没有API也没有关系,这并不影响我们的开发,你可以写如下形式的json数据进行模拟:

Vuejs仿网易云音乐实现听歌及搜索功能

vuejs

路由结构如下

Vuejs仿网易云音乐实现听歌及搜索功能

以下是组件

Vuejs仿网易云音乐实现听歌及搜索功能

1.歌单部分:

数据主要由API提供,源码中有具体地址。需要了解audio标签,不熟悉的同学看audio

2.搜索部分:

通过绑定@keydown来绑定事件,实现实时查询。

better-scroll

使用:

1.一定要用一个空层来承载

<div ref="helloWrapper">
  <div>
  //你的代码
  </div>
</div>

2.在vue中使用前必须引入

import BScroll from 'better-scroll';
this.helloScroll = new BScroll(this.$refs.helloWrapper, {
 click: true
});

一定要在数据渲染完成后使用better-scroll,

this.$nextTick(() => {
 //调用
});

最后上几张效果图

Vuejs仿网易云音乐实现听歌及搜索功能

Vuejs仿网易云音乐实现听歌及搜索功能

Vuejs仿网易云音乐实现听歌及搜索功能

 github项目地址:https://github.com/hua1995116/musiccloudWebapp/

在线演示地址:http://qiufengh.com:8080/

以上所述是小编给大家介绍的Vuejs仿网易云音乐实现听歌及搜索功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js实现ASP分页函数 HTML分页函数
Sep 22 Javascript
Javascript学习笔记-详解in运算符
Sep 13 Javascript
深入理解javascript学习笔记(一) 编写高质量代码
Aug 09 Javascript
jquery入门必备的基本认识及实例(整理)
Jun 24 Javascript
使用jQuery动态加载js脚本文件的方法
Apr 03 Javascript
常用的JavaScript WEB操作方法分享
Feb 28 Javascript
jquery处理页面弹出层查询数据等待操作实例
Mar 25 Javascript
jQuery使用hide方法隐藏页面上指定元素的方法
Mar 30 Javascript
通过AngularJS实现图片上传及缩略图展示示例
Jan 03 Javascript
node.js操作MongoDB的实例详解
Oct 11 Javascript
详解webpack3编译兼容IE8的正确姿势
Dec 21 Javascript
深入理解react 组件类型及使用场景
Mar 07 Javascript
canvas绘制一个常用的emoji表情
Mar 30 #Javascript
JavaScript装饰器函数(Decorator)实例详解
Mar 30 #Javascript
Angular.JS去掉访问路径URL中的#号详解
Mar 30 #Javascript
详解Angular.js数据绑定时自动转义html标签及内容
Mar 30 #Javascript
JavaScript观察者模式(publish/subscribe)原理与实现方法
Mar 30 #Javascript
Angular.js去除页面中显示的空行方法示例
Mar 30 #Javascript
JavaScript实现父子dom同时绑定两个点击事件,一个用捕获,一个用冒泡时执行顺序的方法
Mar 30 #Javascript
You might like
PHP中的日期时间处理利器实例(Carbon)
2017/06/09 PHP
jQuery 源码分析笔记(7) Queue
2011/06/19 Javascript
给jqGrid数据行添加修改和删除操作链接(之一)
2011/11/04 Javascript
JS限制Textarea文本域字符个数的具体实现
2013/08/02 Javascript
jquery设置控件位置的方法
2013/08/21 Javascript
Javascript设计模式之观察者模式的多个实现版本实例
2015/03/03 Javascript
基于JQuery实现图片轮播效果(焦点图)
2016/02/02 Javascript
微信小程序 swiper组件详解及实例代码
2016/10/25 Javascript
jQuery插件select2利用ajax高效查询大数据列表(可搜索、可分页)
2017/05/19 jQuery
jQuery实现的表格前端排序功能示例
2017/09/18 jQuery
关于微信小程序bug记录与解决方法
2018/08/15 Javascript
Vue引用Swiper4插件无法重写分页器样式的解决方法
2018/09/27 Javascript
3分钟了解vue数据劫持的原理实现
2019/05/01 Javascript
微信小程序代码上传、审核发布小程序
2019/05/18 Javascript
javascript面向对象程序设计实践常用知识点总结
2019/07/29 Javascript
layui问题之自动滚动二级iframe页面到指定位置的方法
2019/09/18 Javascript
vue移动端的左右滑动事件详解
2020/06/17 Javascript
javascript实现图片轮换动作方法
2020/08/07 Javascript
python实现统计代码行数的方法
2015/05/22 Python
pyspark.sql.DataFrame与pandas.DataFrame之间的相互转换实例
2018/08/02 Python
解决python给列表里添加字典时被最后一个覆盖的问题
2019/01/21 Python
使用IDLE的Python shell窗口实例详解
2019/11/19 Python
浅谈Python中threading join和setDaemon用法及区别说明
2020/05/02 Python
python GUI模拟实现计算器
2020/06/22 Python
canvas实现烟花的示例代码
2020/01/16 HTML / CSS
Vans奥地利官方网站:美国原创极限运动潮牌
2018/09/30 全球购物
美国医生配方营养补充剂供应商:Healthy Directions
2019/07/10 全球购物
留学生如何写好自荐信
2013/12/27 职场文书
竞聘演讲稿怎么写
2014/08/28 职场文书
群众路线教育实践活动调研报告
2014/11/03 职场文书
办公室岗位职责范本
2015/04/11 职场文书
2015年学校医务室工作总结
2015/07/20 职场文书
班组长如何制订适合本班组的工作计划?
2019/07/10 职场文书
CSS3实现的3D隧道效果
2021/04/27 HTML / CSS
Mysql服务添加 iptables防火墙策略的方案
2021/04/29 MySQL
如何获取numpy array前N个最大值
2021/05/14 Python