真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

深入淺析Vue.js中computed和methods不同機(jī)制

在vue.js中,有methods和computed兩種方式來(lái)動(dòng)態(tài)當(dāng)作方法來(lái)用的

我們提供的服務(wù)有:成都網(wǎng)站制作、成都網(wǎng)站設(shè)計(jì)、微信公眾號(hào)開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、沈陽(yáng)ssl等。為成百上千家企事業(yè)單位解決了網(wǎng)站和推廣的問(wèn)題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的沈陽(yáng)網(wǎng)站制作公司

1.首先最明顯的不同 就是調(diào)用的時(shí)候,methods要加上()

2.我們可以使用 methods 來(lái)替代 computed,效果上兩個(gè)都是一樣的,但是 computed 是基于它的依賴緩存,只有相關(guān)依賴發(fā)生改變時(shí)才會(huì)重新取值。

而使用 methods ,在重新渲染的時(shí)候,函數(shù)總會(huì)重新調(diào)用執(zhí)行

為了方便理解,先上一段源碼



  
    
    title
    
  
  
    

{{now}}

{{now}}

{{now}}

{{now}}


{{now()}}

{{now()}}

{{now()}}

{{now()}}

運(yùn)行結(jié)果如上,可以看出computed計(jì)算屬性的話,每次進(jìn)入頁(yè)面將一直沿用第一次的信息,不會(huì)再觸發(fā)now,這就是依賴緩存。(有延時(shí)的情況下 多次輸出時(shí)間相同)

那什么是相關(guān)依賴發(fā)生改變時(shí)才會(huì)重新取值呢 比方說(shuō)reversedMessage function()計(jì)算屬性中調(diào)用了message變量

就意味著只要 message 還沒(méi)有發(fā)生改變,多次訪問(wèn) reversedMessage 計(jì)算屬性會(huì)立即返回之前的計(jì)算結(jié)果,而不必再次執(zhí)行函數(shù)。

而methods是實(shí)時(shí)的,在重新渲染時(shí),函數(shù)總會(huì)重新調(diào)用執(zhí)行,不會(huì)緩存,(多次輸出時(shí)間不同)

可以說(shuō)使用 computed 性能會(huì)更好,但是如果你不希望緩存,你可以使用 methods 屬性。

computed 屬性默認(rèn)只有 getter ,不過(guò)在需要時(shí)你也可以提供一個(gè) setter :所以其實(shí)computed也是可以傳參的。

ps:下面看下vue計(jì)算屬性computed和methods的區(qū)別

在new Vue的配置參數(shù)中的computed和methods都可以處理大量的邏輯代碼,但是什么時(shí)候用哪個(gè)屬性,要好好區(qū)分一下才能做到正確的運(yùn)用vue。
computed稱為計(jì)算屬性,顧名思義,計(jì)算就要返回一個(gè)計(jì)算的結(jié)果,所以,當(dāng)我們要處理大量的邏輯,但是最后要取得最后的結(jié)果的時(shí)候可以用computed;
簡(jiǎn)單示例:
要求:

現(xiàn)在要返回num1和num2的和;

methods:是方法的意思,在js中,我們把一些函數(shù)叫做方法,一般情況下,要觸發(fā)這個(gè)方法就要執(zhí)行,要執(zhí)行就要有一個(gè)源來(lái)觸發(fā),所以就需要一個(gè)事件源。這是和computed的一點(diǎn)不同之處;
methods的示例:
要求:
<\button @click="do()">點(diǎn)擊彈出<\/button>

對(duì)比computed 和 methods:
computed計(jì)算的結(jié)果如果不發(fā)生改變就不會(huì)觸發(fā)result這個(gè)函數(shù)。而methods中一般都是定義的需要事件觸發(fā)的一些函數(shù)。每次只要觸發(fā)事件,就會(huì)執(zhí)行對(duì)應(yīng)的方法。如果把computed中的方法寫到method中會(huì)浪費(fèi)性能。
computed必須返回一個(gè)值頁(yè)面綁定的才能取得值,而methods中可以只執(zhí)行邏輯代碼,可以有返回值,也可以沒(méi)有。

總結(jié)

以上所述是小編給大家介紹的Vue.js中 computed和methods不同機(jī)制,希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)創(chuàng)新互聯(lián)網(wǎng)站的支持!


文章題目:深入淺析Vue.js中computed和methods不同機(jī)制
URL地址:http://weahome.cn/article/pshhig.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部