從2017年暑假到如今, 想一想本身自學前端也快接近一年了。最大的感覺就是前端的技術真的是變化太快,入了前端的坑後, 本身陷的越深, 越是發覺本身要學的東西越多。也是由於這段時間感受本身的知識積累到了必定的程度, 因此兩週前便有了作一個正經的項目的念頭。剛好PWA相關的技術在18年特別的火, 本身也很感興趣, 因此在項目中用到了其中的一部分技術, 還有不少東西由於項目自己的緣由並無繼續深刻學習且進行實踐, 像消息推送和Web分享API啥的... 而後就是本身Node也會了一點皮毛, 因而就有了如今的這款PWA版的在線音樂播放器。首先說明一下, 本人只是一個前端小白, 這一年中像三大框架本身尚未真正開始學習 ( 本身仍是太菜了 ... ), 用jq又感受太沒意思, 並且本身還不熟練... 因此前端部分沒有用框架寫, 所有是基於原生JavaScript的。前端
項目自己是適配移動端的因此在網站中打開的時候請自行切換到移動端視角查看...... 而後就是蘋果手機的話請長按項目地址拷貝後用Safari打開,點擊正下角的按鈕而後將應用添加到桌面。 要說的是隻有IOS系統升級到11.3.0以上纔會支持 Service Worker 緩存功能, 不過沒有升級添加到桌面後也能看, 應有的效果仍是有的, 只是不能作到重啓應用後秒開的效果。安卓手機能夠經過手機谷歌瀏覽器點擊右上角按鈕而後有添加到主屏幕的選項。ios
emmm, 感受廢話有點多了, 怕看文章的人着急, 因此就先上項目的演示地址和預覽圖吧吧。git
既然說到這裏了仍是列舉一下本項目用到的技術棧吧......github
因爲是第一次本身嘗試着作正經一點的項目, 本身也是費了不少心思去作, 不管是從界面設計仍是到邏輯實現上, 雖然效果和功能都很簡陋, 還請諒解 ...... (ㄒoㄒ)若是喜歡的話隨手給個Star就十分感謝了 ^_^axios
項目源碼地址:Code yinyue後端
PS: 本項目存在某些問題, 多是IOS系統並未實現PWA技術的全方位支持, 也多是本身的問題, 在這裏提一下, 起初是想的是將用戶播放的音樂緩存從而實現離線聽歌, 在手機谷歌瀏覽器中嘗試能夠實現,但在IOS系統上卻播放不了音樂,在谷歌中用戶將應用切換到後臺仍可以播放音樂, 但在IOS上添加到桌面的應用切換後臺後音樂中止響應。相反, 在瀏覽器中運行的項目手機熄屏後沒法作到JS腳本持續運行實現歌曲自動切換, 而加載到IOS桌面上的應用確可以實現。因此我估計的話安卓上面對PWA技術的支持性應該很好, 添加到桌面後從緩存中取出的歌曲也應該可以播放。最後本身仍是想了一個折中的辦法, 即緩存用戶的歌單。這樣的話用戶體驗性可以高一點...瀏覽器