watch是一個偵聽器,宣告在裡面的函式命名要跟data或computed的屬性相對應,watch會偵聽指定的資料,一有變動就觸發watch裡的函式。
函式裡可以傳入兩個參數:第一個是new value,第二個是old value:
const vm= new Vue({
  el:"#app",
  data:{
  value: 0
  },
  watch:{
    value(val, oldVal){
    console.log(`${oldVal} -> ${val}`);
    }
  }
});
watch跟computed一樣,可以更進一步宣告為物件,原本的內容宣告成handler函式,其他屬性immediate及deep選擇使用 :
watch:{
  value:{
    handler(val,oldVal){
      
    },
    immediate: true,//是否在vue實例初始化的時候跑watch
    deep: true,//是否偵聽屬性下的陣列或物件值的改變
  }
}
watch到這兒,下篇生命週期函式