-
從屬性名上,computed是計算屬性,也就是依賴其它的屬性計算所得出最後的值,通常就是簡單的計算,一般用於純粹的取值計算;watch是去監聽一個值的變化,然後執行相對應的函式,做一些特定的操作,一般用於資料變化時執行非同步操作或開銷比較大的操作。
-
從實現上,computed的值在getter執行後是會快取的,只有在它依賴的屬性值改變之後,下一次獲取computed的值時才會重新呼叫對應的getter來計算;watch在每次監聽的值變化時,都會執行回撥。
-
如果一個值依賴多個屬性(多對一),用computed肯定是更加方便的;如果一個值變化後會引起一系列操作,或者一個值變化會引起一系列值的變化(一對多),用watch更加方便一些。
-
computed會產生新的屬性,產生的新的屬性與data中原有的屬性功能沒有區別,用法一樣;watch不會產生新的屬性。
-
computed會在vue例項化過程中執行一次;watch在vue初始化時,不會執行。
-
watch和computed並沒有哪個更底層,watch內部呼叫的是vm.$watch,它們的共同之處就是每個定義共的屬性都單獨建立了一個Watcher物件。
Vue中計算屬性computed與偵聽器watch的區別
相關文章
- 前端【VUE】03-vue【computed 計算屬性】【watch 偵聽器】前端Vue
- Vue中計算屬性和偵聽器Vue
- Vue計算屬性和偵聽器Vue
- Vue中的計算屬性和偵聽器比較Vue
- 深入理解Vue 3:計算屬性與偵聽器的藝術Vue
- Vue.js 的 computed 屬性和 watch 的區別在哪裡?Vue.js
- vue計算屬性 監聽 方法的區別Vue
- vue中computed/method/watch的區別Vue
- vue watch 和 computed 區別與使用Vue
- vue中methods,computed,watch方法的區別Vue
- Vue中watch、computed與methods的聯絡和區別Vue
- Vue(5)計算屬性computedVue
- Vue中computed和watch的區別(轉載)Vue
- Vue — 計算屬性(computed)詳解Vue
- vue.js計算屬性(computed)Vue.js
- vue 基礎入門筆記 19:計算屬性和偵聽屬性Vue筆記
- vue.js基礎02--計算屬性(computed、watch、&watch)、過濾器、自定義元件(component、components)Vue.js過濾器元件
- Vue中computed、methods和watch之間的區別Vue
- Vue.js中偵聽器watch 的高階用法Vue.js
- vue.js計算屬性用法(computed)Vue.js
- Vue筆記三——計算屬性(computed)Vue筆記
- vue中的computed屬性Vue
- Vue computed 與 watchVue
- 關於vuejs的偵聽屬性watch的三個問題VueJS
- computed 和 watch的區別??
- computed和watch的區別
- 第六講、Vue3.x中使用JavaScript表示式 、條件判斷、 計算屬性和watch偵聽VueJavaScript
- Vue之computed(計算屬性)詳解get()、set()Vue
- Vue 基礎自查——watch、computed和methods的區別Vue
- Vuejs中關於computed、methods、watch的區別VueJS
- Vue:watch 監聽多個屬性值的方法Vue
- Vue3原始碼解析(computed-計算屬性)Vue原始碼
- 複習Vue中的方法,計算和偵聽者Vue
- Vue常考知識點--computed 和 watch 區別Vue
- 【原始碼系列#04】Vue3偵聽器原理(Watch)原始碼Vue
- vue3的computed計算屬性返回值註解Vue
- Vue.js入門學習 -- 計算屬性Computed( 十一)Vue.js
- Vue原始碼學習(十七):實現computed計算屬性Vue原始碼