通过计算属性来更改几个数据,针对于这几个数据有失焦事件,但是先触发了失焦事件,后获得到了计算属性怎么办,我想先获取到计算属性的值再进行失焦事件

news/2024/11/8 21:01:27/

计算属性是惰性的,只有依赖的数据发生变化时才会重新计算。这可能会导致失焦事件先触发,获取到的计算属性值还未更新的情况。要解决这个问题,有两种方法:1. 在失焦事件中加入 setTimeout,等计算属性重新计算后再获取其值。

js
computed: {fullName() { /* ... */ }  
},
methods: {onBlur() {setTimeout(() => {let fullName = this.fullName;  // 此时已重新计算,拿到最新值// 使用 fullName ...}, 0);}
}

setTimeout 的延时时间设置为 0,是为了放到队列末尾,等编译器完成计算属性的重新计算后再执行。2. 监听计算属性,在它变化时手动触发失焦事件。

js
computed: {fullName() { /* ... */ }  
},
watch: {fullName() {this.onBlur();  // 监听到变化时手动触发失焦事件}  
},
methods: {onBlur() {let fullName = this.fullName;  // 此时已重新计算,拿到最新值// 使用 fullName ...}
} 

监听计算属性 fullName,当它变化时立即手动调用 onBlur 方法,这样就可以保证在失焦事件中获取到计算属性的最新值。这两种方法的原理都是:确保在失焦事件执行时,计算属性已完成更新,以获取其最新计算的值。setTimeout 延时执行失焦事件,等计算属性完成更新;
watch 监听计算属性变化,手动触发失焦事件。所以选择方法主要根据个人喜好,两者实现原理是类似的。


http://www.ppmy.cn/news/87507.html

相关文章

C++入门预备语法

C入门预备语法 C关键字命名空间C输入&输出初步缺省参数函数重载引用内联函数auto和范围for(C11)指针空值nullptr C关键字 命名空间 命名空间是一种将变量名、函数名、类名和库名称等封装到一个命名空间域中,与其他域的同名量相隔离&…

利用视听短片从自然刺激中获得开放的多模式iEEG-fMRI数据集

在认知神经科学领域,数据共享和开放科学变得越来越重要。虽然许多参与认知神经科学实验的志愿者的数据集现在是公开可用的,但颅内脑电图(iEEG)数据的共享相对较少。iEEG是一种高时间和空间分辨率的记录技术,通过在患者…

【Servlet 基础】

🎉🎉🎉点进来你就是我的人了博主主页:🙈🙈🙈戳一戳,欢迎大佬指点! 欢迎志同道合的朋友一起加油喔🤺🤺🤺 目录 1. 什么是Servlet? 2. 第一个Serv…

量子力学专题:线性谐振子

任何体系在平衡位置附近的小振动,例如 分子振动、晶格振动、原子核表面振动以及辐射场的振动等往往都可以分解成 若干彼此独立的一维简谐振动简谐振动往往还作为复杂运动的初步近似 见理论力学专题(小振动) 双原子分子,两原子间的…

Android 12.0 NavigationBarView 导航栏 左边显示的修改

1.概述 在12.0定制化开发中,要求导航栏左边显示的定制化,这时需要了解导航栏的显示控制方向,然后修改显示方向 在10.0以后关于导航栏显示位置都是在DisplayPolicy.java中处理的所以查询相关的设置方法,然后修改导航栏显示方向2.NavigationBarView 导航栏 左边显示的修改的…

第3章“程序的机器级表示”:Intel 处理器的发展历史

文章目录 前言3.1 Intel处理器的发展历史 前言 在用高级语言如 C 语言编程时,我们被屏蔽了程序具体的机器级实现。相比之下,在用汇编代码写程序时,程序员必须明确指定程序该如何管理存储器(memory)和用来执行计算的低…

【腾讯云FinOps Crane 集训营】快速搭建一个 Kubernetes+Crane 环境,以及如何基于 Crane 优化你的集群和应用初体验

文章目录 一、活动介绍二、环境搭建三、安装本地的 Kind 集群和 Crane 组件四、界面截图五、主要功能六、整体架构七、Crane的优势八、总结参考文献 一、活动介绍 Crane 是由腾讯云主导开源的国内第一个基于云原生技术的成本优化项目,遵循 FinOps 标准,…

【Docker】- 01 Docker基础入门(安装、镜像操作、容器操作、数据卷)

目录 1 Docker引入1.1 环境不一致1.2 隔离性1.3 弹性伸缩1.4 学习成本 2 Docker介绍2.1 Docker的由来2.2 Docker的思想 3 Docker的安装3.1 下载Docker依赖的环境3.2 指定Docker镜像源3.3 安装Docker3.4 启动Docker并测试 4 Docker的中央仓库5 镜像的操作5.1 拉取镜像5.2 查看本…