Vuejs仿網(wǎng)易云音樂實現(xiàn)聽歌及搜索功能
前言
前端時間學了vue,一開始看了vue1.0,后來實在覺得技術總得實踐,就直接上手vue2.0。然后花了將近一周時間做了一個網(wǎng)易云音樂的小項目。一開始覺得項目比較小,沒必要用vuex所以就沒有使用,但是后來發(fā)現(xiàn)數(shù)據(jù)流傳輸有點麻煩,后續(xù)會使用vuex。
技術棧
vue+vue-router(核心框架)
better-scroll(使移動端滑動體驗更加流暢)
vue-lazyload(用戶圖片懶加載)
nprogress(用于加載過渡)
axios(請求)
功能分析與設計
首先我先參考了現(xiàn)有的一些APP的設計與開發(fā),然后決定做了歌單和搜索兩個模塊,本身主要以前端為主,后端代碼并沒有研究,這里要感謝這位同學寫的API。如果你沒有API也沒有關系,這并不影響我們的開發(fā),你可以寫如下形式的json數(shù)據(jù)進行模擬:
vuejs
路由結構如下
以下是組件
1.歌單部分:
數(shù)據(jù)主要由API提供,源碼中有具體地址。需要了解audio標簽,不熟悉的同學看audio
2.搜索部分:
通過綁定@keydown來綁定事件,實現(xiàn)實時查詢。
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 });
一定要在數(shù)據(jù)渲染完成后使用better-scroll,
this.$nextTick(() => { //調用 });
最后上幾張效果圖
github項目地址:https://github.com/hua1995116/musiccloudWebapp/
在線演示地址:http://qiufengh.com:8080/
以上所述是小編給大家介紹的Vuejs仿網(wǎng)易云音樂實現(xiàn)聽歌及搜索功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關文章
vue中swiper?vue-awesome-swiper的使用方法及各種坑解決
這篇文章主要介紹了vue中swiper?vue-awesome-swiper的使用方法及各種坑解決,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-01-01淺談Vue.js之初始化el以及數(shù)據(jù)的綁定說明
今天小編就為大家分享一篇淺談Vue.js之初始化el以及數(shù)據(jù)的綁定說明,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-11-11element的el-date-picker組件實現(xiàn)只顯示年月日時分效果(不顯示秒)
最近遇到這樣的需求使用element的el-date-picker組件,只顯示時分,不顯示秒,下面小編給大家分享element的el-date-picker組件實現(xiàn)只顯示年月日時分效果,感興趣的朋友一起看看吧2024-08-08vue實現(xiàn)一個矩形標記區(qū)域(rectangle marker)的方法
這篇文章主要介紹了vue實現(xiàn)一個矩形標記區(qū)域 rectangle marker的方法,幫助大家實現(xiàn)區(qū)域標記功能,感興趣的朋友可以了解下2020-10-10Vue前端如何實現(xiàn)與后端進行數(shù)據(jù)交互
這篇文章主要介紹了Vue前端如何實現(xiàn)與后端進行數(shù)據(jù)交互,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-03-03element日歷calendar組件上月、今天、下月、日歷塊點擊事件及模板源碼
這篇文章主要介紹了element日歷calendar組件上月、今天、下月、日歷塊點擊事件及模板源碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-07-07