首页 > 其他分享 >Vue3 watch揭秘:基本用法与原理深度解析

Vue3 watch揭秘:基本用法与原理深度解析

时间:2023-09-19 22:33:54浏览次数:37  
标签:count 函数 对象 watch Watcher Proxy Vue3 揭秘

Vue3 watch揭秘:基本用法与原理深度解析_回调函数

Vue3中的watch函数用于监听数据的变化,当数据发生变化时,可以执行一些操作。watch函数的基本用法如下:

import { ref, watch } from 'vue';

export default {
  setup() {
    const count = ref(0);
    watch(count, (newValue, oldValue) => {
      console.log(`count 的新值为:${newValue},旧值为:${oldValue}`);
    });
    return {
      count
    };
  }
}

在上面的例子中,我们创建了一个响应式数字变量count,并使用watch函数监听它的变化。当count的值发生变化时,会自动执行传入的回调函数,并打印出新的值和旧的值。

原理介绍:

Vue3中的watch函数是基于Proxy实现的。当我们在组件中使用watch函数时,Vue会为每个被监听的数据创建一个Proxy对象。这个Proxy对象会在数据发生变化时自动触发相应的回调函数。具体来说,Watcher对象会观察Proxy对象的变化,并在变化发生时调用相关的回调函数。Watcher对象是异步的,这意味着它可以在回调函数执行期间继续观察Proxy对象的变化。如果回调函数返回一个值,那么Watcher对象会立即停止观察Proxy对象的变化。

标签:count,函数,对象,watch,Watcher,Proxy,Vue3,揭秘
From: https://blog.51cto.com/u_16228250/7529826

相关文章

  • 安装node、npm和vue3
    1.首先安装node和npmnode.js安装地址https://nodejs.org/en/download/2.下载完安装好后,打开终端命令验证是否安装成功node-vnpm-v3.安装vue3npminstall-g@vue/cli4.创建vue3项目npmcreate【your-project-name】这一指令将会安装并执行create-vue,它是......
  • 【原创】135、137、138、139、445端口大揭秘
        我是一位名不见经传的凡人小鲜肉一枚,本来不想作自我介绍一翻,但是每次又总想以这样的方式和大家打声招呼,就像冯巩每次一见到大家,不都是:我想死你们了!是的,我是龙少一郎,今天我要为大家带来端口大揭秘,看看常用的135、137、138、139、445端口在平时的电脑系统中有什么样的非......
  • FX110网:揭秘融商环球骗局!竟拿着黑平台Top Wealth当令箭
    近日,有汇友向我站爆料称融商环球后台登录不上,他尝试着电话、社交平台等各种渠道联系平台方,均联系不上,他也无法出金......到底是怎么回事?本文便来扒一扒融商环球这一平台。融商环球不过是拿着鸡毛当令箭事实上,早在2019年8月,FX110便已将融商环球纳入虚假交易商警示名单,当时曝光的域......
  • vue3版的uniapp在路由这块有好的方案吗?
    在Vue3版本的uni-app中,你可以使用VueRouter进行路由管理。VueRouter是Vue.js官方提供的路由解决方案,可以方便地实现单页面应用的路由功能。以下是一些在Vue3版的uni-app中使用VueRouter的好的方案:安装VueRouter:首先,在你的uni-app项目中安装VueRouter。可以使用npm或yarn来安......
  • Vue3+vite路由配置优化(自动化导入)
    今天在维护优化公司中台项目时,发现路由的文件配置非常多非常乱,只要只中大型项目,都会进入很多的路由页面,规范一点的公司还会吧路由进行模块化导入,但是依然存在很多文件夹的和手动导入的问题。于是我想到了我之前使用vuex时进行的模块化自动导入js文件,能不能使用到自动导入.vue文件......
  • 少年,该升级 Vue3 了!
    你好,我是Kagol。前言根据Vue官网文档的说明,Vue2的终止支持时间是2023年12月31日,这意味着从明年开始:Vue2将不再更新和升级新版本,不再增加新特性,不再修复缺陷虽然Vue3正式版本已经发布快3年了,但据我了解,现在依然还有很多业务在使用Vue2,迟迟没有升级Vue3。为......
  • Vue3深度解析:reactive和ref的区别你真的了解吗?
    Vue3中引入了CompositionAPI,其中包含了reactive和ref两个核心函数。这两个函数都是用于创建响应式数据的,但它们之间有一些区别。首先,让我们来看一下reactive函数。reactive函数接受一个普通对象作为参数,并返回一个新的响应式对象。这个响应式对象会跟踪所有属性的变化,并在属性发......
  • vue3 computed属性
    该随笔是根据b站小满zs的Vue3+vite+Ts+pinia+实战+源码+electron的视频学习写的,Vue3+vite+Ts+pinia+实战+源码+electron......
  • Spring Boot + Vue3 前后端分离 实战 wiki 知识库系统<一>---Spring Boot项目搭建
    前言:接下来又得被迫开启新的一门课程的学习了,上半年末尾淘汰又即将拉开序幕【已经记不清经历过多少次考试了】,需要去学习其它领域的技术作为考试内容,我选了springboot相关技术,所以。。总之作为男人,不能轻易言败,尽力而为,抱怨解决不了任何问题,逆境使人进步,我坚信这点,效果:在正式学习......
  • Spring Boot&Vue3前后端分离实战wiki知识库系统<十三>--单点登录开发二
    接着SpringBoot&Vue3前后端分离实战wiki知识库系统<十二>--用户管理&单点登录开发一继续往下。登录功能开发: 接下来则来开发用户的登录功能,先准备后端的接口。后端增加登录接口:1、UserLoginReq:先来准备用户登录的请求实体:packagecom.cexo.wiki.req;importjavax.validation.co......