vue中的computed 与 watch
計算屬性 computed
指通過計算得來的屬性,用于監聽屬性的變化
computed里面的函數調用的時候 不需要加()
方法里必須有一個返回值 return
computed中的函數不會通過事件去觸發的,而是當屬性(必須是data中的屬性)發生改變的時候,computed里面的函數就自然而然的去觸發
computed最大的特點就是 當屬性狀態未發生改變的時候。當前的函數會從緩存中讀取
?
?
?
監聽屬性 watch
用于監聽每一個屬性的變化
watch這個對象里面都是函數,函數的名稱一定是 data中屬性的名稱 。 watch中函數是不需要調用的
我們可以在watch中進行新舊值的判斷 從而來減少虛擬DOM的渲染
只要當前屬性發生改變就會觸發 與之對應的函數
若我們需要對對象進行監聽 , 需要將屬性設置為 key 值 , val 為一個對象 且對象中有兩個參數必寫 , 一個數handle函數, 一個為 deep = true 從而實現深度監聽
?
?
?
computed 與 watch 區別
1 computed中的函數調用是不需要()的 , 而watch是不需要進行函數調用的
2. 當屬性沒有發生改變的時候 ,computed中的函數會從 緩存 中讀取值 當屬性發生改變的時候,watch中的函數會接受兩個參數,一個代表 新值,另一個代表舊值
3. watch 若需要監聽對象,必須使用 深度監聽
4. computed 中的函數必須要帶有返回值 return
5. 命名: computed 中的函數命名是任意的 , watch中的函數名必須是 data 中參數的名
?
轉載于:https://www.cnblogs.com/wangqi2019/p/10577462.html
總結
以上是生活随笔為你收集整理的vue中的computed 与 watch的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: oracle误删scott文件如何恢复
- 下一篇: Pipenv和Python虚拟环境