Vuejs仿網(wǎng)易云音樂實(shí)現(xiàn)聽歌及搜索功能
前言
前端時(shí)間學(xué)了vue,一開始看了vue1.0,后來實(shí)在覺得技術(shù)總得實(shí)踐,就直接上手vue2.0。然后花了將近一周時(shí)間做了一個(gè)網(wǎng)易云音樂的小項(xiàng)目。一開始覺得項(xiàng)目比較小,沒必要用vuex所以就沒有使用,但是后來發(fā)現(xiàn)數(shù)據(jù)流傳輸有點(diǎn)麻煩,后續(xù)會(huì)使用vuex。
技術(shù)棧
vue+vue-router(核心框架)
better-scroll(使移動(dòng)端滑動(dòng)體驗(yàn)更加流暢)
vue-lazyload(用戶圖片懶加載)
nprogress(用于加載過渡)
axios(請(qǐng)求)
功能分析與設(shè)計(jì)
首先我先參考了現(xiàn)有的一些APP的設(shè)計(jì)與開發(fā),然后決定做了歌單和搜索兩個(gè)模塊,本身主要以前端為主,后端代碼并沒有研究,這里要感謝這位同學(xué)寫的API。如果你沒有API也沒有關(guān)系,這并不影響我們的開發(fā),你可以寫如下形式的json數(shù)據(jù)進(jìn)行模擬:
vuejs
路由結(jié)構(gòu)如下
以下是組件
1.歌單部分:
數(shù)據(jù)主要由API提供,源碼中有具體地址。需要了解audio標(biāo)簽,不熟悉的同學(xué)看audio
2.搜索部分:
通過綁定@keydown來綁定事件,實(shí)現(xiàn)實(shí)時(shí)查詢。
better-scroll
使用:
1.一定要用一個(gè)空層來承載
<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(() => { //調(diào)用 });
最后上幾張效果圖
github項(xiàng)目地址:https://github.com/hua1995116/musiccloudWebapp/
在線演示地址:http://qiufengh.com:8080/
以上所述是小編給大家介紹的Vuejs仿網(wǎng)易云音樂實(shí)現(xiàn)聽歌及搜索功能,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
- vue插件開發(fā)之使用pdf.js實(shí)現(xiàn)手機(jī)端在線預(yù)覽pdf文檔的方法
- vue項(xiàng)目實(shí)現(xiàn)github在線預(yù)覽功能
- vue translate peoject實(shí)現(xiàn)在線翻譯功能【新手必看】
- vue+socket.io+express+mongodb 實(shí)現(xiàn)簡(jiǎn)易多房間在線群聊示例
- 利用Vue.js實(shí)現(xiàn)求職在線之職位查詢功能
- 基于vue開發(fā)的在線付費(fèi)課程應(yīng)用過程
- 實(shí)現(xiàn)Vue的markdown文檔可以在線運(yùn)行的方法示例
- vue實(shí)現(xiàn)的網(wǎng)易云音樂在線播放和下載功能案例
相關(guān)文章
vue中swiper?vue-awesome-swiper的使用方法及各種坑解決
這篇文章主要介紹了vue中swiper?vue-awesome-swiper的使用方法及各種坑解決,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-01-01淺談Vue.js之初始化el以及數(shù)據(jù)的綁定說明
今天小編就為大家分享一篇淺談Vue.js之初始化el以及數(shù)據(jù)的綁定說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-11-11在Vue中使用Avue、配置過程及實(shí)際應(yīng)用小結(jié)
在項(xiàng)目中遇到通過點(diǎn)擊加號(hào)實(shí)現(xiàn)輸入框的增加、以及對(duì)該輸入框的輸入內(nèi)容進(jìn)行驗(yàn)證,通過這些誘導(dǎo)因素創(chuàng)作的這篇文章,本文重點(diǎn)給大家介紹在Vue中使用Avue、配置過程以及實(shí)際應(yīng)用,需要的朋友可以參考下2022-10-10element的el-date-picker組件實(shí)現(xiàn)只顯示年月日時(shí)分效果(不顯示秒)
最近遇到這樣的需求使用element的el-date-picker組件,只顯示時(shí)分,不顯示秒,下面小編給大家分享element的el-date-picker組件實(shí)現(xiàn)只顯示年月日時(shí)分效果,感興趣的朋友一起看看吧2024-08-08vue項(xiàng)目中實(shí)現(xiàn)多文件上傳功能實(shí)例代碼
我們平時(shí)經(jīng)常做的是上傳文件,下面這篇文章主要給大家介紹了關(guān)于vue項(xiàng)目中實(shí)現(xiàn)多文件上傳功能的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-11-11vue實(shí)現(xiàn)一個(gè)矩形標(biāo)記區(qū)域(rectangle marker)的方法
這篇文章主要介紹了vue實(shí)現(xiàn)一個(gè)矩形標(biāo)記區(qū)域 rectangle marker的方法,幫助大家實(shí)現(xiàn)區(qū)域標(biāo)記功能,感興趣的朋友可以了解下2020-10-10vue.js實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器功能
這篇文章主要為大家詳細(xì)介紹了vue.js實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-02-02Vue前端如何實(shí)現(xiàn)與后端進(jìn)行數(shù)據(jù)交互
這篇文章主要介紹了Vue前端如何實(shí)現(xiàn)與后端進(jìn)行數(shù)據(jù)交互,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03element日歷calendar組件上月、今天、下月、日歷塊點(diǎn)擊事件及模板源碼
這篇文章主要介紹了element日歷calendar組件上月、今天、下月、日歷塊點(diǎn)擊事件及模板源碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07