当前位置:Gxlcms > JavaScript > Vue 全家桶实现移动端酷狗音乐功能

Vue 全家桶实现移动端酷狗音乐功能

时间:2021-07-01 10:21:17 帮助过:81人阅读

Vue 已经用了不少时间,最近抽空把以前的未完成的酷狗音乐做完了,过来分享下,也可以直接点这里预览,注意切换成手机模式。

技术栈: vue-router、eventBus、vuex、vue-awesome-swiper

整体功能 vs 酷狗官网:

总体模拟官网,原来的亮点保留,如:

  1. 图片懒加载

除此之外,增加了

  1. 加了全局的 Loading 组件,根据不同页面调整 Loading 尺寸
  2. 搜索页面做了优化,可以在刷新时保留之前的搜索结果
  3. 播放页面单独做了一个路由,可以在刷新时保留当前歌曲页面
  4. 播放器的常驻以及滚动时最小化,避免遮挡歌曲名称
  5. 部分可以重用,极少更新的数据,譬如主页四大栏,避免了数据的二次请求。
  6. 增加了主页四栏手势滑动切换
  7. 歌词滚动等
  8. ...

如果参考网易云,后续可以加的新功能还有一些,不过暂时我要先去做其他事了。

CSS 觉得不难,都是手写的,采用的是 BEM 规范,js 是 ESLint。

总体难度适中,只不过,如果规范化,组件化抽象,任务还是不少的,具体的坑我就不说了,源代码都在这里,推荐想要熟悉 vue 的同学也自己试下。

作为一个练手项目,vue 全家桶都覆盖到了,当然,如果你只用 vue 和 vue-router 去实现,也不是不行,实现到一大半,就会明白为什么要全家桶了。

至于酷狗的接口以及跨域的问题,解决方案都在 README 里,都是借用的其他作者的分享与整理,在此还是要感谢下 ecitlm 和 JsonBird。

src/ 文件目录:

  1. |__ App.vue
  2. |__ assets
  3. |__ css
  4. |__ base.less
  5. |__ constant.less
  6. |__ iconfont.css
  7. |__ reset.css
  8. |__ images
  9. |__ logo__grey.png
  10. |__ logo__text.png
  11. |__ logo__theme.png
  12. |__ js
  13. |__ api.js
  14. |__ bus.js
  15. |__ globalEvent.js
  16. |__ mobileLayout.js
  17. |__ utils.js
  18. |__ components
  19. |__ Main.vue
  20. |__ new_song
  21. |__ NewSong.vue
  22. |__ Slider.vue
  23. |__ player
  24. |__ NextButton.vue
  25. |__ PlayButton.vue
  26. |__ PlayerLyrics.vue
  27. |__ PlayerMax.vue
  28. |__ PlayerMed.vue
  29. |__ PlayerProgress.vue
  30. |__ PrevButton.vue
  31. |__ public
  32. |__ AppHeader.vue
  33. |__ AppLoading.vue
  34. |__ AppMusicList.vue
  35. |__ AppNav.vue
  36. |__ PubList.vue
  37. |__ PubModuleDes.vue
  38. |__ PubModuleHead.vue
  39. |__ PubModuleTitle.vue
  40. |__ rank
  41. |__ RankInfo.vue
  42. |__ RankList.vue
  43. |__ search
  44. |__ Search.vue
  45. |__ singer
  46. |__ SingerCategory.vue
  47. |__ SingerInfo.vue
  48. |__ SingerList.vue
  49. |__ song
  50. |__ SongList.vue
  51. |__ SongListInfo.vue
  52. |__ main.js
  53. |__ mixins
  54. |__ index.js
  55. |__ loading.js
  56. |__ router
  57. |__ index.js
  58. |__ store
  59. |__ device.js
  60. |__ images.js
  61. |__ index.js
  62. |__ loading.js
  63. |__ newSong.js
  64. |__ player.js
  65. |__ rank.js
  66. |__ search.js
  67. |__ singer.js
  68. |__ song.js

总结

以上所述是小编给大家介绍的Vue 全家桶实现移动端酷狗音乐功能,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

人气教程排行