当前位置: 首页 > news >正文

vue监听对象属性值变化

一、官方文档

二、实现方法

方法一、直接根据watch来监听

export default {data() {return {object: {username: '',password: ''}}},watch: {'object.username'(newVal, oldVal) {console.log(newVal, oldVal)}}
}

方法二:利用watchcomputed来实现监听

利用computed定义一个新属性,新属性使用object里面的某个属性值,再使用watch来监听这个新属性值。

export default {data() {return {object: {username: '',password: ''}}},computed: {username() {return this.object.username}},watch: {username(newVal, oldVal) {console.log(newVal, oldVal)}}
}

方法三:利用对象属性的deep = true来实现

只要对象属性里面的任何一个属性值发生改变,不论嵌套的多深,都会触发监听里面的handler方法。

注意:如果是一个数组对象ArrayObject,也要加deep,如果该属性是一个数组Array,则不需要加deep

export default {data() {return {object: {username: '',password: ''}array: ['1', '2'],arrayObject: [{id: 1,name: '1'}{id: 2,name: '2'}]}},watch: {object: {deep: true,handler(newVal, oldVal) {//newVal和oldVal会包含formData里面的每一个属性值console.log(newVal, oldVal)}},array: {handler(newVal, oldVal) {//newVal和oldVal会包含formData里面的每一个属性值console.log(newVal, oldVal)}},arrayObject: {deep: true,handler(newVal, oldVal) {//newVal和oldVal会包含formData里面的每一个属性值console.log(newVal, oldVal)}}}
}
http://www.lryc.cn/news/233821.html

相关文章:

  • Unicode编码的emoji表情如何在前端页面展示(未完成)
  • 基于SSM的设备配件管理和设备检修系统
  • 鸿蒙开发|鸿蒙系统项目开发前的准备工作
  • Evil靶场
  • 第77题. 组合
  • 读书笔记:彼得·德鲁克《认识管理》第21章 企业与政府
  • C/C++疫情集中隔离 2021年12月电子学会青少年软件编程(C/C++)等级考试一级真题答案解析
  • 052-第三代软件开发-系统监测
  • 向量矩阵范数pytorch
  • NVIDIA Jetson OTA升级
  • 【算法】算法题-20231118
  • 某60区块链安全之整数溢出漏洞实战学习记录
  • 图数据库Neo4J 中文分词查询及全文检索(建立全文索引)
  • element-china-area-data使用问题
  • 248: vue+openlayers 以静态图片作为底图,并在上面绘制矢量多边形
  • thinkphp6(TP6)访问控制器报404(Nginx)
  • 腾讯云轻量应用服务器使用场景列举说明
  • 【漏洞复现】IP-guard WebServer 远程命令执行
  • 23111704[含文档+PPT+源码等]计算机毕业设计springboot办公管理系统oa人力人事办公
  • 在Linux系统上检测GPU显存和使用情况
  • 内网穿透 cpolar
  • ai剪辑矩阵系统源码+无人直播系统源码技术开发
  • 2311rust,到38版本更新
  • 腾讯云4核8G服务器配置价格表,轻量和CVM标准型S5实例
  • Android 屏幕适配
  • Python使用Mechanize库完成自动化爬虫程序
  • 【Shell脚本入门】
  • redis大全
  • linux rsyslog日志采集格式设定五
  • uni-app:如何配置uni.request请求的超时响应时间(全局+局部)