您好,登錄后才能下訂單哦!
這篇文章將為大家詳細講解有關vue中computed和watch有哪些區別,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。
區別:計算屬性computed支持緩存,只有依賴數據發生改變,才會重新進行計算;不支持異步,當computed內有異步操作時無效,無法監聽數據的變化。而監聽屬性watch不支持緩存,數據變,直接會觸發相應的操作;支持異步。
watch顧名思義,用于監聽數據變化,其中可以監聽的數據來源有三部分:props、data、computed內的數據;watch提供兩個參數(newValue,oldValue),第一個參數是新值,第二個參數保存舊值;
computed用于處理復雜的邏輯運算,主要和methods儲存方法來進行區分;methods儲存方法,,computed儲存需要處理的數據值;methods每次都會調用,computed有緩存機制,只有改變時才執行,性能更佳;
vue中computer與watch區別:
計算屬性computed :
1. 支持緩存,只有依賴數據發生改變,才會重新進行計算
2. 不支持異步,當computed內有異步操作時無效,無法監聽數據的變化
3.computed 屬性值會默認走緩存,計算屬性是基于它們的響應式依賴進行緩存的,也就是基于data中聲明過的數據通過計算得到的
4. 如果一個屬性是由其他屬性計算而來的,這個屬性依賴其他屬性,是一個多對一或者一對一,一般用computed
5.如果computed屬性屬性值是函數,那么默認會走get方法;函數的返回值就是屬性的屬性值;在computed中的,屬性都有一個get和一個set方法,當數據變化時,調用set方法。
監聽屬性watch:
1. 不支持緩存,數據變,直接會觸發相應的操作;
2.watch支持異步;
3.監聽的函數接收兩個參數,第一個參數是最新的值;第二個參數是輸入之前的值;
4. 當一個屬性發生變化時,需要執行對應的操作;一對多;
關于vue中computed和watch有哪些區別就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。