vue中watch的用法

1、首先確認watch是一個對象,必定要當作對象來用javascript

watch:{

}

  對象:有鍵,有值。java

 一、鍵:就是你要監控的那個傢伙,好比說$route,這個就是要監控路由的變化。或者是data中的某個變量。數組

 二、值:函數

  ① 能夠是【函數】:就是當你監控的傢伙變化時,須要執行的函數,這個函數有兩個形參,第一個是當前值,第二個是變化後的值。spa

  ② 能夠是【函數名】:不過這個函數名要用單引號來包裹。.net

  ③ 能夠是【包括選項的對象】:選項包含有三個,以下:對象

    a. 第一個handler:其值是一個回調函數。即監聽到變化時應該執行的函數blog

    b. 第二個是deep:其值是true或false;確認是否深刻監聽。(通常監聽時是不能監聽到對象屬性值的變化的,數組的值變化能夠監聽到,所以:數據的改變不須要使用深度watchip

    c. 第三個是immediate:其值是true或false,確認是否以當前的初始值執行handler的函數路由

var vm = new Vue({
    data:{
        a:1,
        b:2,
        c:3
    },
    watch:{
        //值:函數
        a:function(val, oldVal) {
            console.log('new: %s, old: %s', val, oldVal)
        },
        //值:方法名
        b:'someMethod',
        //選項的對象
        c:{
            handler:function(val, oldVal){
                console.log(val, oldVal)
            },
            deep: true,
            immediate: true
        }
    }
});

  參考地址:https://blog.csdn.net/wangxiaoxiaosen/article/details/78487089

       http://www.javashuo.com/article/p-otkyvxvt-gz.html

       https://blog.csdn.net/zhuming3834/article/details/79726929

相關文章
相關標籤/搜索