和vue2对比,也是语法上稍有不同。

监听单个数据对象

<script setup>
import {ref, watch} from "vue"; const count = ref(100)
// 语法: watch(响应式数据对象, (newVal, oldVal) => { 业务处理... }
// 只监听单个数据
// watch(count, (newValue, oldValue) => {
// console.log(newValue, oldValue);
// })

同时监听多个数据对象

// 同时监听多个数据
const num = ref(88)
// watch([count, num], (newValue, oldValue) => {
// // 此时的newValue和oldValue是一个数组,newValue=[新的Count值, 新的Num值] oldValue=[原Count值, 原Num值]
// console.log(newValue, oldValue);
// })
// 此时可以使用es6的数据解构语法(类似python的拆包)
watch([count, num], ([newCount, newNum], [oldCount, oldNum]) => {
console.log(newCount, newNum, oldCount, oldNum)
})

监听对象类型数据中的某个值:

// 监听对象中的某个值
const obj = ref({
username: 'zhangsan',
age: 18
})
watch(() => obj.value.age, (newValue, oldValue) => {
console.log('obj中的age发生了改变:', newValue)
})

deep、immediate的使用

/**
* deep深度监听和immediate初始加载马上执行
* 这两个属性和vue2是一样的含义,不同的地方也是在于语法使用上.
*
* 具体为: 直接使用第三个参数,传递options对象。
*/
watch(obj, (newVal, oldVal) => {
console.log(newVal, oldVal);
}, {
deep: true,
immediate: true
})

组合式api-侦听器watch的语法的更多相关文章

  1. 【Vue】Vue框架常用知识点 Vue的模板语法、计算属性与侦听器、条件渲染、列表渲染、Class与Style绑定介绍与基本的用法

    Vue框架常用知识点 文章目录 Vue框架常用知识点 知识点解释 第一个vue应用 模板语法 计算属性与侦听器 条件渲染.列表渲染.Class与Style绑定 知识点解释 vue框架知识体系 [1]基 ...

  2. Vue学习计划基础笔记(二) - 模板语法,计算属性,侦听器

    模板语法.计算属性和侦听器 目标: 1.熟练使用vue的模板语法 2.理解计算属性与侦听器的用法以及应用场景 1. 模板语法 <div id="app"> <!- ...

  3. VueJs(7)---计算属性和侦听器

    计算属性和侦听器 一. 概述 计算属性 模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的.在模板中放入太多的逻辑会让模板过重且难以维护.例如: <div id="exampl ...

  4. vue从入门到进阶:计算属性computed与侦听器watch(三)

    计算属性computed 模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的.在模板中放入太多的逻辑会让模板过重且难以维护.例如: <div id="example" ...

  5. Vue.js之Vue计算属性、侦听器、样式绑定

    前言 上一篇介绍了Vue的基本概念,这一篇介绍一下Vue的基本使用. 一.搭建一个Vue程序 1.1 搭建Vue环境 搭建Vue的开发环境总共有三种方法: 引入CDN <script src=& ...

  6. vue 自学笔记(三) 计算属性与侦听器

    一:计算属性 虽然在模板内使用表达式对属性进行处理十分便利,例如在小胡子语法里写number + 1实现对数据的简单处理,但若我们在其中加入大量的代码,使得逻辑变重,导致难以维护.例如下面的代码,并不 ...

  7. Vue教程:计算属性computed与侦听器watch(三)

    计算属性computed 模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的.在模板中放入太多的逻辑会让模板过重且难以维护.例如: <div id="example" ...

  8. Vue侦听器watch

    虽然计算属性在大多数情况下更合适,但有时也需要一个自定义的侦听器.这就是为什么 Vue 通过 watch 选项提供了一个更通用的方法,来响应数据的变化.当需要在数据变化时执行异步或开销较大的操作时,这 ...

  9. 一起学Vue之计算属性和侦听器

    概述 在Vue开发中,模板内的表达式非常便利,但是设计它们的初衷是用于简单运算的.在模板中放入太多的逻辑会让模板过重且难以维护.当你想要在模板中多次引用相同表达式时,就会更加难以处理.所以,对于任何复 ...

  10. vue条件语句、循环语句、计算属性、侦听器监听属性

    因为 v-if 和v-for是一个指令,所以必须将它添加到一个元素上.但是如果想切换多个元素呢?此时可以把一个 <template> 元素当做不可见的包裹元素,并在上面使用 v-if.最终 ...

随机推荐

  1. .NET6.0实现IOC容器

    .NET6.0实现IOC容器 IOC的作用这里省略-只对如何使用进行说明. 1. 创建一个.NET6应用程序 这里使用 .NET6.0 WebAPI 应用 2. 声明接口 public interfa ...

  2. mac安装nvm

    系统:macos catalina版本:10.15.7 一.安装nvm 打开终端执行这个命令 安装的版本是 v0.39.1 curl -o- [https://raw.githubuserconten ...

  3. 全网最详细Java-JVM

    Java-JVM ①JVM概述 ❶基本介绍 JVM:全称 Java Virtual Machine,一个虚拟计算机,Java 程序的运行环境(Java二进制字节码的运行环境) 特点: Java 虚拟机 ...

  4. LSP 链路状态协议

    转载请注明出处: 链路状态协议(Link State Protocol)是一种在计算机网络中用于动态计算路由的协议.它的主要作用是收集网络拓扑信息,为每个节点构建一个准确的网络图,并基于这些信息计算出 ...

  5. 数据泵(impdb)导入Oracle分片的数据库dump文件

    数据泵(impdb)导入Oracle数据库 一.sqlplus登录目标数据库,创建导入的目录路径 #该目录要在导入的数据库本机建立,如果是docker就在容器内部创建 create directory ...

  6. How to install Django¶

    This document will get you up and running with Django. Install Python Being a Python Web framework, ...

  7. orale命令6 rman备份

    RMAN:使用ramn进行备份和恢复,rman不依赖系统操作命令,在数据块级别做备份.块级别备份,能只备份变化后的块,实现增量备份.而且不会备份空的块.好处:1.能实现增量备份2.只备份有数据的块,不 ...

  8. Hello-FPGA CoaXPress 2.0 FPGA HOST IP Core PCIe Demo User Manual

    目录 1 说明 4 2 设备连接 7 3 VIVADO FPGA工程 8 4 调试说明 9 图 1‑1 资料目录 4 图 1‑2 VIVADO工程目录结构 5 图 1‑3 VS软件工程目录 5 图 1 ...

  9. 未能添加SSL证书,错误1312

    1.win+r打开运行,输入mmc 2.在控制台1[控制台根节点]->文件->添加/删除....->选择证书->添加-选择计算机账户->完成->确认 3.找到证书文 ...

  10. 服务器没有开放3306端口 远程访问MySQL数据库方法

    一.前言 ​ 当装有MySQL的服务器为了防止数据库被黑,提高安全性,把3306端口禁止掉,禁止对外访问,我之前写过一篇是借助跳板机的SSH隧道来访问实现安全,这种情况依然需要开放3306端口和使用一 ...