vue中同时监听多个参数
vue使用watch同时监听多个参数,其中有任意一个参数发生改变时,都会被监听到需要使用到计算属性computed与监听watchdata中定义一个对象:data(){return{obj:{name:'xpf',gender:'male',age:24}}}...
·
vue使用watch同时监听多个参数,其中有任意一个参数发生改变时,都会被监听到
需要使用到计算属性computed与监听watch
data中定义一个对象:
data(){
return{
obj:{
name:'xpf',
gender:'male',
age:24
}
}
}
computed中:将需要监听的参数放入一个新变量中
computed:{
'newParams':function(){
const {name,age} = this.obj
return {name,age}
}
},
watch中:监听新的变量
watch:{
newParams:function(){
alert(1)
}
},
完整代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>watch同时监听多个属性</title>
<script src="https://cdn.bootcss.com/vue/2.6.10/vue.js"></script>
</head>
<body>
<div id="app">
<div @click="changeObj">点我</div>
</div>
<script>
new Vue({
el:'#app',
data(){
return{
obj:{
name:'xpf',
gender:'male',
age:24
}
}
},
computed:{
'newParams':function(){
const {name,age} = this.obj
return {name,age}
}
},
watch:{
newParams:function(){
alert(1)
}
},
methods:{
changeObj(){
// this.obj.name = 'xx'
this.obj.age = 21
}
}
})
</script>
</body>
</html>
更多推荐
已为社区贡献12条内容
所有评论(0)