watch和computed區別 及兩者使用場景

一、區別
watch中的函數是不須要調用的
computed內部的函數調用的時候不須要加()
 
watch  屬性監聽 監聽屬性的變化
computed:計算屬性經過屬性計算而得來的屬性
 
watch須要在數據變化時執行異步或開銷較大的操做時使用
對於任何複雜邏輯或一個數據屬性在它所依賴的屬性發生變化時,也要發生變化,這種狀況下,咱們最好使用計算屬性computed。 
 

computed 屬性的結果會被緩存,除非依賴的響應式屬性變化纔會從新計算。主要看成屬性來使用;緩存

computed中的函數必須用return返回最終的結果異步

當computed中的函數所依賴的屬性若是沒有發生改變的時候,那麼調用當前函數的時候結果會從緩存中讀取函數

watch 一個對象,鍵是須要觀察的表達式,值是對應回調函數。主要用來監聽某些特定數據的變化,從而進行某些具體的業務邏輯操做;對象

 

 

二、使用場景
computed     
    當一個屬性受多個屬性影響的時候就須要用到computed
    最典型的例子: 購物車商品結算的時候
watch
    當一條數據影響多條數據的時候就須要用watch
    搜索數據
相關文章
相關標籤/搜索