发布网友 发布时间:2022-04-21 21:18
共2个回答
懂视网 时间:2022-05-14 20:44
本篇文章给大家带来的内容是关于vue中watch的用法实例(监听对象、数据联动),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。当对象内的某一个元素发生变化,判断对象另一元素,并进行赋值
<template> <input type="text" v-model="a.a1.a12"/>{{a.a1.a12}} <input type="text" v-model="a.a2.a22"/>{{a.a2.a22}} </template> <script> data(){ retrun{ a:{ a1:{ a12:12 }, a2:{ a22:15 } } }, watch:{ a:{ handler(val.oldval){ if(val.a1.a12<val.a2.a22){ val.a2.a22=val.a1.a12; } }, deep:true } } </script>
热心网友 时间:2022-05-14 17:52
Vue.js 提供了一个方法 watch,它用于观察Vue实例上的数据变动。对应一个对象,键是观察表达式,值是对应回调。值也可以是方法名,或者是对象,包含选项。具体的用法可以直接看下面的示例,简单直接。
<span style="color:#006600;"><div id="app">
<input type="text" v-model:value="childrens.name" />
<input type="text" v-model:value="lastName" />
</div>
<script type="text/javascript">
var vm = new Vue( {
el: '#app',
data: {
childrens: {
name: '小强',
age: 20,
sex: '男'
},
tdArray:["1","2"],
lastName:"张三"
},
watch:{
childrens:{
handler:function(val,oldval){
console.log(val.name)
},
deep:true//对象内部的属性监听,也叫深度监听
},
'childrens.name':function(val,oldval){
console.log(val+"aaa")
},//键路径必须加上引号
lastName:function(val,oldval){
console.log(this.lastName)
}
},//以V-model绑定数据时使用的数据变化监测
} );
vm.$watch("lastName",function(val,oldval){
console.log(val)
})//主动调用$watch方法来进行数据监测</span>
</script>
</body>