watch监听

<html>
	<div id="app">
	    <h2>{{ info.name }}</h2>
	    <button @click="changeInfo">修改info</button>
	  </div>
</html>
<script>
	export default{
		data() {
	        return {
	          info: { name: "why", age: 18 }
	        }
	      },
	      methods: {
	        changeInfo() {
	          // 1.创建一个新对象, 赋值给info
	          // this.info = { name: "kobe" }
	
	          // 2.直接修改原对象某一个属性
	          this.info.name = "kobe"
	        }
	      },
	      watch: {
	        // 默认watch监听不会进行深度监听
	        
	        // info(newValue, oldValue) {
	        //   console.log("侦听到info改变:", newValue, oldValue)
	        // }
	
	        // 进行深度监听
	        info: {
	          handler(newValue, oldValue) {
	            console.log("侦听到info改变:", newValue, oldValue)
	            console.log(newValue === oldValue)
	          },
	          // 监听器选项:
	          // info进行深度监听
	          deep: true,
	          // 第一次渲染直接执行一次监听器
	          immediate: true
	        },
			//监听单个属性,(不常用)
	        "info.name": function(newValue, oldValue) {
	          console.log("name发生改变:", newValue, oldValue)
	        }
		}
	}
</script>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值