本篇文章給大家分享的是有關(guān)Vue中TodoList如何使用,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括鹽湖網(wǎng)站建設(shè)、鹽湖網(wǎng)站制作、鹽湖網(wǎng)頁制作以及鹽湖網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,鹽湖網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到鹽湖省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
1. methods
methods類似react中組件的方法,不同的是vue采用的與html綁定事件。
給個(gè)例子
/*html*/
/*js*/ var app = new Vue({ el:'#app', methods:{ handlClick:function(){ alert('succeed!'); }, } })
通過在input標(biāo)簽中的vue命令 v-on命令綁定handlClick事件,而handlClick事件是寫在methods屬性里的
2. computed
/*html*/{{even}}
/*js*/ var app2 = new Vue({ el:'#app2', data:{ message:[1,2,3,4,5,6] }, computed:{ even:function(){ //篩選偶數(shù) return this.message.filter(function(item){ return item%2 === 0; }); }, }, });
可以看到篩選出來了message中的偶數(shù),現(xiàn)在在控制臺打印出message看看
可以看到,message并沒有變,還是原來的message,然后在控制臺中修改message試試,
修改后我并沒有人為的觸發(fā)任何函數(shù),左邊的顯示就變成了新的數(shù)組的偶數(shù)選集
3. 區(qū)別
methods是一種交互方法,通常是把用戶的交互動(dòng)作寫在methods中;而computed是一種數(shù)據(jù)變化時(shí)mvc中的module 到 view 的數(shù)據(jù)轉(zhuǎn)化映射。
簡單點(diǎn)講就是methods是需要去人為觸發(fā)的,而computed是在檢測到data數(shù)據(jù)變化時(shí)自動(dòng)觸發(fā)的,還有一點(diǎn)就是,性能消耗的區(qū)別,這個(gè)好解釋。
首先,methods是方式,方法計(jì)算后垃圾回收機(jī)制就把變量回收,所以下次在要求解篩選偶數(shù)時(shí)它會(huì)再次的去求值。而computed會(huì)是依賴數(shù)據(jù)的,就像閉包一樣,數(shù)據(jù)占用內(nèi)存是不會(huì)被垃圾回收掉的,所以再次訪問篩選偶數(shù)集,不會(huì)去再次計(jì)算而是返回上次計(jì)算的值,當(dāng)data中的數(shù)據(jù)改變時(shí)才會(huì)重新計(jì)算。簡而言之,methods是一次性計(jì)算沒有緩存,computed是有緩存的計(jì)算。
4. TodoList例子
看了一下Vue官網(wǎng)的todo例子,好像沒有篩選功能,所以就寫了有個(gè)篩選功能的例子,下面代碼中,@click的意思是v-on='click'的簡寫,:class=的意思是v-bind:'class'=的簡寫
todos
- {{item.text}} 完成
以上就是Vue中TodoList如何使用,小編相信有部分知識點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。