Vue中watch的一些用法

Vue中的watch对象是用来监听实例中数据的,当你有一些数据需要随着其它数据变动而变动时,就可以使用watch来监听。这里顺便提一下watch和computer的区别,watch中监听的数据,必须是在data中或者props中定义的,而computer则刚好相反,computer中定义的数据,则是在data或props中未定义的。

常用的watch的写法:

watch:{
    users: function (newValue) {
        // 函数体
    }
}

注意:此处定义的函数不能是箭头函数,需要使用常规函数写法,否则函数内的this不指向当前这个实例。此处users监听的是基本数据类型的值。

如果需要监听引用数据类型的值,则需要添加deep属性,例如下面这种写法:

watch: {
    users: {
        handler: function (newValue) {
            // 函数体
        },
        deep: true
    }
}

其中handler是固定的属性。

watch是监听users,是指当users发生变化的时候触发handler函数,以执行某些操作,如果需要在该Vue实例刚创建的触发的话,需要添加immediate属性,例如下面的写法:

watch: {
    users: {
        handler: function (newValue) {
            // 函数体
        },
        deep: true,
        immediate: true
    }
}

结束。

本人水平有限,如果文中有错误或描述不清楚的地方,欢迎指出。

猜你喜欢

转载自blog.csdn.net/lh_guojw/article/details/84817558
今日推荐