如何使用`watch`选项来监听特定属性的变化?

简介: 如何使用`watch`选项来监听特定属性的变化?

在 Vue 中,可以使用watch选项来监听特定属性的变化。如果需要监听对象obj中的属性a的变化,可以使用以下代码:

<template>
  <div>
    <input type="text" v-model="obj.a" @input="handleInput" />
    <input type="text" v-model="obj.b" @input="handleInput" />
    <p>{
  { obj }}</p>
  </div>
</template>

<script>
export default {
    
  data() {
    
    return {
    
      obj: {
     a: '', b: '' },
    };
  },
  watch: {
    
    'obj.a': {
    
      handler(newValue, oldValue) {
    
        console.log('obj.a changed:', newValue, oldValue);
      },
    },
  },
  methods: {
    
    handleInput(event) {
    
      this.obj[event.target.name] = event.target.value;
    },
  },
};
</script>

在上述示例中,我们使用'obj.a'作为watch选项的键,这样只会监听obj对象中的a属性的变化,而不会监听其他属性的变化。当obj.a属性发生变化时,会触发handler函数,并将新的值和旧的值作为参数传递给它。

目录
相关文章
|
前端开发 IDE JavaScript
 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之RichText组件
 鸿蒙(HarmonyOS)项目方舟框架(ArkUI)之RichText组件
542 4
|
敏捷开发 安全 算法
软件质量度量维度
软件质量度量维度
361 1
|
缓存 中间件 API
【利用AI让知识体系化】入门Egg框架(含实战)(三)
【利用AI让知识体系化】入门Egg框架(含实战)
|
3月前
|
Web App开发 缓存 数据安全/隐私保护
Django全栈实战:HTTP状态码与业务状态码的分层设计与实战应用
HTTP状态码是服务器响应请求的3位数字代码,分为1xx(信息)、2xx(成功)、3xx(重定向)、4xx(客户端错误)、5xx(服务器错误)。业务状态码则用于描述具体业务逻辑结果,常在响应体中返回。二者在前后端交互中有不同用途和处理方式。本文还介绍了如何在Django项目中设计并使用业务状态码。
281 0
|
10月前
|
C语言
【C语言】break 关键字详解
- `break` 关键字用于提前退出循环体或 `switch` 语句的执行。 - 在 `for`、`while` 和 `do-while` 循环中,`break` 可以帮助程序在满足特定条件时退出循环。 - 在 `switch` 语句中,`break` 用于终止 `case` 代码块的执行,避免代码“穿透”到下一个 `case`。 - 注意 `break` 只会退出最内层的循环或 `switch` 语句,确保在嵌套结构中正确使用 `break` 以避免意外的控制流行为。
959 2
|
12月前
|
存储 数据管理 API
Harmony状态管理AppStorageV2和PersistenceV2
Harmony状态管理AppStorageV2和PersistenceV2
321 0
Harmony状态管理AppStorageV2和PersistenceV2
|
机器学习/深度学习 存储 Shell
浅析三种Anaconda虚拟环境创建方式和第三方包的安装
浅析三种Anaconda虚拟环境创建方式和第三方包的安装
1071 0
|
关系型数据库 MySQL iOS开发
干货文:Mac 中 .bash_profile 和 .zshrc 的区别
干货文:Mac 中 .bash_profile 和 .zshrc 的区别
1972 1
|
数据采集 运维 监控
数据能力体系NO2:数据验证
数据能力体系NO2:数据验证
数据能力体系NO2:数据验证
|
存储 人工智能 并行计算
加速44%!RT-DETR量化无损压缩优秀实战
加速44%!RT-DETR量化无损压缩优秀实战
407 0