先来看看官网的介绍:
官网介绍的很好理解了,也就是监听一个数据的变化,当该数据变化时执行我们的watch方法,watch选项是一个对象,键为需要观察的数据名,值为一个表达式(函数),还可以是一个对象,如果时对象可以包含如下几个属性:
handler ;对应的函数 ;可以带两个参数,分别是新的值和旧的值,上下文为当前Vue实例 immediate ;侦听开始之后是否立即调用 ;默认为false sync ;波尔值,是否同步执行,默认false ;如果设置了这个属性,当数据有变化时就会立即执行了,否则放到下一个tick中排队执行
例如:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script src="https://cdn.bootcss.com/vue/2.5.16/vue.js"></script>
<title>Document</title>
</head>
<body>
<div id="app">
<p>{{message}}</p>
<button @click="test">测试</button>
</div>
<script>
var app = new Vue({
el:'#app',
data:{message:'hello world!'},
watch:{
message:function(newval,val){
console.log(newval,val)
}
},
methods:{
test:()=>app.message="Hello Vue!"
}
})
</script>
</body>
</html> 到此这篇关于Vue.javascript源码分析(七)基础篇侦听器watch属性详解就介绍到这了。永不放弃是你梦想实现的唯一秘诀。更多相关Vue.javascript源码分析(七)基础篇侦听器watch属性详解内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!




