computed 属性的结果会被缓存,除非依赖的响应式属性变化才会重新计算。主要当作属性来使用;
computed中的函数必须用return返回最终的结果
computed: {
// 计算属性的getter
reversedMessage: function () {
console.log(‘调用了‘);
return this.message.split(‘‘).reverse().join(‘‘);
}
},
Computed还有一个setter方法:
fullName: {
// getter
get: function () {
console.log(‘get‘);
return this.firstName + ‘ ‘ +this.lastName;
},
// setter
set: function (newValue) {
this.firstName = ‘120‘;
this.lastName = ‘021‘;
console.log(‘set‘);
}
}
当computed中的函数所依赖的属性如果没有发生改变的时候,那么调用当前函数的时候结果会从缓存中读取
watch 一个对象,键是需要观察的表达式,值是对应回调函数。主要用来监听某些特定数据的变化,从而进行某些具体的业务逻辑操作;
watch: {
firstName: function (val) {
this.fullName = val + ‘ ‘ +this.lastName
},
lastName: function (val) {
this.fullName = this.firstName + ‘‘ + val
}
}
原文:https://www.cnblogs.com/zwjun/p/13207724.html