We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
是一个计算属性,对数据进行过滤器处理
data: { firstName: 'Tom', lastName: 'Jerry' }, computed: { fullName: function () { return this.firstName + ' ' + this.lastName } }
注意: computed中的属性如fullName不可在data里面定义,否则会报错
computed
fullName
data
data: { firstName: 'Foo', lastName: 'Bar' }, computed: { fullName:{ get(){ // 回调函数 当需要读取当前属性值时执行 return this.firstName + ' ' + this.lastName }, set(val){ // 监视当前属性值的变化,val就是fullName的最新属性值 const names = val.split(' '); this.firstName = names[0]; this.lastName = names[1]; } } }
是一个监听属性,对数据进行监听处理
data(){ return{ 'first': 1 } }, watch:{ first(){ console.log(this.first) } }
监听复杂数据类型需用深度监听
data(){ return{ 'first':{ second: 2 } } }, watch:{ 'first.second'(oldVal,newVal){ console.log(oldVal, newVal); } }
方法一: 可以直接对用对象.属性的方法拿到属性
对象.属性
data(){ return{ 'first':{ second: 2 } } }, watch:{ first.second: function(newVal, oldVal){ console.log(newVal, oldVal); } }
方法二: watch如果想要监听对象的单个属性的变化,必须用computed作为中间件转化,因为computed可以取到对应的属性值
data(){ return{ 'first':{ second: 2 } } }, computed: { showNum() { return this.first.second; } }, watch: { showNum(newVal, oldVal) { console.log(`new:${newVal}, old:${oldVal}`); } }
The text was updated successfully, but these errors were encountered:
No branches or pull requests
一、computed和watch的区别
computed特性
watch特性
二、computed
定义
是一个计算属性,对数据进行过滤器处理
用法
1、get用法
注意:
computed
中的属性如fullName
不可在data
里面定义,否则会报错2、get和set用法
三、watch
定义
是一个监听属性,对数据进行监听处理
用法
1、监听简单数据类型
2、监听复杂数据类型
监听复杂数据类型需用深度监听
3、监听对象单个属性
方法一: 可以直接对用
对象.属性
的方法拿到属性方法二: watch如果想要监听对象的单个属性的变化,必须用
computed
作为中间件转化,因为computed
可以取到对应的属性值参考文献
The text was updated successfully, but these errors were encountered: