watch用于监控自身属性变化和监控路由对象
计算属性computed的特点
- 计算属性会依赖于他使用的data中的属性,只要是依赖的属性值有改变,则自动重新调用一下计算属性;
- 如果他所依赖的这些属性值没有发生改变,那么计算属性的值是从缓存中来的,而不是重新编译,那么性能要高一些,所以vue中尽可能使用computed替代watch。
<template>
<div id="root">
<input type="text" v-model="firstName" />
<input type="text" v-model="lastName" />
<p>{{fullName}}</p>
<p>{{count}}</p>
</div>
</template>
<script>
export default {
components:{
},
data(){
return{
firstName:"",
lastName:"",
count:1
}
},
methods:{
},
computed:{
fullName: function(){
return this.firstName + ' '+ this.lastName;
}
},
watch:{
fullName:function(){
return this.count++;
}
}
}
</script>