vue音乐app项目

转载https://blog.csdn.net/qq_34235864/article/details/86151807
VUE移动端音乐APP

1.项目准备

【音乐App】—— Vue-music 项目学习笔记:项目准备
前言: 学习慕课网Vue高级实战课程后,在实践中总结一些这个项目带给自己的收获,希望可以再次巩固关于Vue开发的知识。这一篇主要梳理:项目概况、项目准备、页面骨架搭建。项目github地址:https://github.com/66Web/ljq_vue_music,欢迎Star。

一、项目概况

   项目目标: 开发一个媲美原生的移动端音乐App

主页面 用户个人中心

播放器 播放列表

  前端技术栈: 

Vue:用于构建用户界面的 MVVM 框架。它的核心是响应的数据绑定和组系统件
vue-router:为单页面应用提供的路由系统,项目上线前使用了 Lazy Loading Routes 技术来实现异步加载优化性能
vuex:Vue 集中状态管理,在多个组件共享某些状态时非常便捷
vue-lazyload:第三方图片懒加载库,优化页面加载速度
better-scroll:iscroll 的优化版,使移动端滑动体验更加流畅
stylus:css 预编译处理器
ES6:ECMAScript 新一代语法,模块化、解构赋值、Promise、Class 等方法非常好用
后端技术栈:

Node.js:利用 Express 起一个本地测试服务器
jsonp:服务端通讯。抓取 QQ音乐(移动端)数据
axios:服务端通讯。结合 Node.js 代理后端请求,抓取 QQ音乐(PC端)数据
自动化构建及其他工具:

webpack:项目的编译打包
vue-cli:Vue 脚手架工具,快速搭建项目
eslint:代码风格检查工具,规范代码格式
vConsole:移动端调试工具,在移动端输出日志
业务层与支撑层:

二、项目准备

   vue-cli安装

(sudo) npm install -g vue-cli // sudo:mac环境下有关管理权限的命令
vue init webpack vue-music
  项目目录介绍及图标字体、公共样式等资源准备

api目录 : 和后端请求相关的代码,包括ajax和jsonp的请求
common目录 : fonts/image/js/stylus
components目录 : 业务组件
base目录 : 基础组件
router目录 : 路由相关文件
store目录 : 存放vuex相关的代码
样式文件

base.styl : 一些基础的样式,并且引用variable.styl
variable.styl : 颜色定义规范、字体定义规范(组件要使用时引用)
icon.styl : 制作字体文件后要使用的样式
reset.styl : 重置样式
mixin.styl : 定义一些样式函数(组件要使用时引用)
index.styl : 引入 reset/base/icon.styl
安装stylus stylus-loader

npm install stylus stylus-loader --save
main.js入口文件中引入

import ‘./common/stylus/index.styl’

三、页面骨架开发

   页面入口+header组件编写

index.html 添加标签 : 移动端常见的基本设置

安装依赖:

//babel-runtime —— 对es6语法做一些转义
//fastclick —— 解决移动端点击延迟300ms的问题
//babel-polyfill —— 【补丁】 对es6中promise等API的转义
npm install babel-runtime fastclick babel-polyfill --save
在 main.js 中引入:
//babel-polyfill 一定要写在最前面
import ‘babel-polyfill’
import fastclick from ‘fastclick’

//fastclick推荐用法:使document.body下面所有的点击都没有300ms的延迟
fastclick.attach(document.body)
删掉 Helloword.vue , 修改router->index.js 中的配置,删掉 Helloword 相关
创建 m-header.vue 组件,坑:

4个路由,对应要创建4个组件:
rank(排行页面)
recommend(推荐页面)
search(搜索页面)
singer(歌手页面)
在router->index.js中引入,并配置路由routes:
import Recommend from ‘@/components/recommend/recommend’
import Singer from ‘@/components/singer/singer’
import Rank from ‘@/components/rank/rank’
import Search from ‘@/components/search/search’

routes: [
{
path: ‘/’,
redirect: ‘/recommend’ //默认页面重定向到recommend路由中
},
{
path: ‘/recommend’,
component: Recommend
},
{
path: ‘/rank’,
component: Rank
},
{
path: ‘/search’,
component: Search
},
{
path: ‘/singer’,
component: Singer
}
]
App.vue 中使用
创建 tab.vue 导航栏组件,通过切换路由

推荐


歌手


排行


搜索

设置点击高亮样式:&.router-link-active
App.vue 中引入并注册tab.vue,使用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
仿网易音乐VUE项目 ## 功能特性 1. 登录 2. 刷新登录 3. 发送验证码 4. 校验验证码 5. 注册(修改密码) 6. 获取用户信息 , 歌单,收藏,mv, dj 数量 7. 获取用户歌单 8. 获取用户电台 9. 获取用户关注列表 10. 获取用户粉丝列表 11. 获取用户动态 12. 获取用户播放记录 13. 获取精品歌单 14. 获取歌单详情 15. 搜索 16. 搜索建议 17. 获取歌词 18. 歌曲评论 19. 收藏单曲到歌单 20. 专辑评论 21. 歌单评论 22. mv 评论 23. 电台节目评论 24. banner 25. 获取歌曲详情 26. 获取专辑内容 27. 获取歌手单曲 28. 获取歌手 mv 29. 获取歌手专辑 30. 获取歌手描述 31. 获取相似歌手 32. 获取相似歌单 33. 相似 mv 34. 获取相似音乐 35. 获取最近 5 个听了这首歌的用户 36. 获取每日推荐歌单 37. 获取每日推荐歌曲 38. 私人 FM 39. 签到 40. 喜欢音乐 41. 垃圾桶 42. 歌单 ( 网友精选碟 ) 43. 新碟上架 44. 热门歌手 45. 最新 mv 46. 推荐 mv 47. 推荐歌单 48. 推荐新音乐 49. 推荐电台 50. 推荐节目 51. 独家放送 52. mv 排行 53. 获取 mv 数据 54. 播放 mv/视频 55. 排行榜 56. 歌手榜 57. 云盘 58. 电台 - 推荐 59. 电台 - 分类 60. 电台 - 分类推荐 61. 电台 - 订阅 62. 电台 - 详情 63. 电台 - 节目 64. 给评论点赞 65. 获取动态 66. 热搜列表(简略) 67. 发送私信 68. 发送私信歌单 69. 新建歌单 70. 收藏/取消收藏歌单 71. 歌单分类 72. 收藏的歌手列表 73. 订阅的电台列表 74. 相关歌单推荐 75. 付费精选接口 76. 音乐是否可用检查接口 77. 登录状态 78. 获取视频播放地址 79. 发送/删除评论 80. 热门评论 81. 视频评论 82. 退出登录 83. 所有榜单 84. 所有榜单内容摘要 85. 收藏视频 86. 收藏 MV 87. 视频详情 88. 相关视频 89. 关注用户 90. 新歌速递 91. 喜欢音乐列表(无序) 92. 收藏的 MV 列表 93. 获取最新专辑 94. 听歌打卡 95. 获取视频标签/分类下的视频 96. 已收藏专辑列表 97. 获取动态评论 98. 歌单收藏者列表 99. 云盘歌曲删除 100. 热门话题 101. 电台 - 推荐类型 102. 电台 - 非热门类型 103. 电台 - 今日优选 104. 心动模式/智能播放 105. 转发动态 106. 删除动态 107. 分享歌曲、歌单、mv、电台、电台节目到动态 108. 通知-私信 109. 通知-评论 110. 通知-@我 111. 通知-通知 112. 设置 113. 云盘数据详情 114. 私信内容 115. 我的数字专辑 116. batch批量请求接口 117. 获取视频标签列表 118. 全部mv 119. 网易出品mv 120. 收藏/取消收藏专辑 121. 专辑动态信息 122. 热搜列表(详细) 123. 更换绑定手机 124. 检测手机号码是否已注册 125. 初始化昵称 126. 更新歌单描述 127. 更新歌单名 128. 更新歌单标签 129. 默认搜索关键词 130. 删除歌单 131. 电台banner 132. 用户电台 133. 热门电台 134. 电台 - 节目详情 135. 电台 - 节目榜 136. 电台 - 新晋电台榜/热门电台榜 137. 类别热门电台 138. 云村热评 139. 电台24小时节目榜 140. 电台24小时主播榜 141. 电台最热主播榜 142. 电台主播新人榜 143. 电台付费精品榜 144. 歌手热门50首歌曲 145. 购买数字专辑 146. 获取 mv 点赞转发评论数数据 147. 获取视频点赞转发评论数数据 148. 调整歌单顺序 149. 调整歌曲顺序 150. 独家放送列表 151. 获取推荐视频 152. 获取视频分类列表 153. 获取全部视频列表接口 154. 获取历史日推可用日期列表 155. 获取历史日推详细数据 156. 国家编码列表 157. 首页-发现 158. 首页-发现-圆形图标入口列表 159. 数字专辑-全部新碟 160. 数字专辑-热门新碟 161. 数字专辑&数字单曲-榜单 162. 数字专辑-语种风格馆 163. 数字专辑详情 ## 环境要求 需要 NodeJS 8.12+ 环境
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值