1,computed 能實現的,methods 肯定也能夠實現。
2,不同之處在於,computed 是基於他的依賴進行緩存的,computed 只有在他的的相關依賴發生改變的時候才會重新計算。
如果他的相關依賴並沒有發生改變,每次訪問都是返回他的緩存的值。
methods,則是每次觸發重新渲染之后,調用方法會再次執行函數。
總結:當我們不希望有緩存的時候,就使用methods
3,computed 和 watch 的相同和不同之處
相同點:computed 和 watch 都是以vue的依賴追蹤為基礎的,都是希望當依賴發生改變的時候,被依賴的數據根據預定好的函數發生改變。
不同點:watch 監聽,一般是監聽一個數據,從而影響多個數據
computed 計算屬性, 一般是計算一個屬性,這個屬性受多個數據影響
總結:一般使用computed,但是如果需要異步,或者數據開銷太大的情況下,使用watch.