更新時間:2023年09月19日11時59分 來源:傳智教育 瀏覽次數(shù):
computed計(jì)算屬性就是為了簡化template里面模版字符串的計(jì)算復(fù)雜度、防止模版太過冗余。它具有緩存特性。
omputed用來監(jiān)控自己定義的變量,該變量不在data里面聲明,直接在computed里面定義,然后就可以在頁面上進(jìn)行雙向數(shù)據(jù)綁定展示出結(jié)果或者用作其他處理;
watch主要用于監(jiān)控vue實(shí)例的變化,它監(jiān)控的變量當(dāng)然必須在data里面聲明才可以,它可以監(jiān)控一個變量,也可以是一個對象,一般用于監(jiān)控路由、input輸入框的值特殊處理等等,它比較適合的場景是一個數(shù)據(jù)影響多個數(shù)據(jù),它不具有緩存性。
watch:監(jiān)測的是屬性值,只要屬性值發(fā)生變化,其都會觸發(fā)執(zhí)行回調(diào)函數(shù)來執(zhí)行一系列操作。
computed:監(jiān)測的是依賴值,依賴值不變的情況下其會直接讀取緩存進(jìn)行復(fù)用,變化的情況下才會重新計(jì)算。
除此之外,有點(diǎn)很重要的區(qū)別是:計(jì)算屬性不能執(zhí)行異步任務(wù),計(jì)算屬性必須同步執(zhí)行。也就是說計(jì)算屬性不能向服務(wù)器請求或者執(zhí)行異步任務(wù)。如果遇到異步任務(wù),就交給偵聽屬性。watch也可以檢測 computed屬性。
北京校區(qū)