仿網易雲音樂webApp

Hdove發表於2019-12-22

專案介紹

首先,整個專案主要技術棧還是基於React,專案大部分樣式主要是仿照iPhone版網易雲音樂進行實現,部分地方進行了調整,程式碼部分基本上拋棄了class的寫法,全方位擁抱Hook,真香。關於防抖、節流、懶載入這些優化手段,在專案裡統統有用到
編寫這個專案的目的其實很簡單,就是想把目前所掌握的知識進行一個彙總,然後分享給大家,找出目前所存在的一些問題,然後及時進行調整,歡迎大家的批評和指正。

GitHub地址 歡迎大家star。
線上訪問地址
手機端用掘金直接開啟會有點問題,建議右上角在瀏覽器中開啟。
PC端的話建議使用谷歌瀏覽器,相容性問題會在之後進行修復。

技術棧

前端部分

  • react:前端三大主流框架之一,
  • redux:提供可預測的狀態管理工具
  • redux-saga:基於redux提供非同步業務實現方案
  • react-router-dom:react路由管理工具
  • redux-actions:簡化redux的使用
  • typescript:JavaScript超集
  • axios:基於promise的HTTP庫
  • antd:前端元件庫
  • less:CSS預處理語言
  • webpack:前端構建工具

後端

  • 後端使用的是一個開源的NodeJs版的Api 點選檢視

主要功能介紹

仿網易雲音樂webApp

具體功能在圖裡已經展示出來,就不一一進行介紹了,大家自行體會就OK,這在這裡放幾張Gif圖片了哈

  • 首頁
    仿網易雲音樂webApp
  • 歌單廣場
    仿網易雲音樂webApp
  • 排行榜
    仿網易雲音樂webApp
  • 歌手頁
    仿網易雲音樂webApp
  • 歌手詳情
    仿網易雲音樂webApp
  • 搜尋
    仿網易雲音樂webApp
  • 播放頁
    仿網易雲音樂webApp
  • 評價
    仿網易雲音樂webApp

結語

目前專案還在自測中,可能、額。肯定會有一些Bug,也希望大家多多提issues,專案會一直保持更新,以後也會新增一些功能,一起加油吧!

部分問題

  • 排行榜某些榜單在所提供介面中找不到,所以自動跳轉到飆升榜。
  • 獲取歌單歌曲沒有提供分頁功能,只能直接獲取全部,導致部分介面響應可能會緩慢。
  • 有時候剛開啟的時候會報跨域問題,雖然介面已經新增Access-Control-Allow-Origin,但還是會偶現,目前尚未解決。

提示

  • 目前播放列表是根據你點開的歌單或者排行榜自動新增進去的。
  • 首頁輪播圖可能會有部分點選無反應,是因為我會判斷這是不是一首可以免費聽得歌,是的話回跳到播放頁。
  • 在播放歌曲的時候,如果播放列表中沒有歌曲,點選上一首或者下一首是沒有反應的哦。

相關文章