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

vue 关于两个if条件中的promise

一、案例效果

期望if判断条件里的两个promise 都同时执行完成

二、 初始代码案例

const formatDetail = async (fnArgsJsonParams: MapLogicType) => {if (fnArgsJsonParams?.targetFeatureName) {const resDetailData = await formatFeatureInfo(fnArgsJsonParams.targetFeatureName)targetParamsObj.value = { ...resDetailData }console.log('1111111111')$emit('targetFeatureCallback')}if (fnArgsJsonParams?.inputFeatureName) {inputResultObj.value = await formatFeatureInfo(fnArgsJsonParams.inputFeatureName)console.log('2222222222')}
}

可以使用Promise.all来确保两个if语句中的异步操作都执行完毕。以下是修改后的代码

const formatDetail = async (fnArgsJsonParams: MapLogicType) => {const promises = []if (fnArgsJsonParams?.targetFeatureName) {const targetFeaturePromise = formatFeatureInfo(fnArgsJsonParams.targetFeatureName).then(resDetailData => {targetParamsObj.value = { ...resDetailData }console.log('1111111111')$emit('targetFeatureCallback')})promises.push(targetFeaturePromise)}if (fnArgsJsonParams?.inputFeatureName) {const inputFeaturePromise = formatFeatureInfo(fnArgsJsonParams.inputFeatureName).then(resDetailData => {inputResultObj.value = resDetailDataconsole.log('2222222222')})promises.push(inputFeaturePromise)}await Promise.all(promises)
}

这样,Promise.all会等待所有的Promise都完成后再继续执行。

相关文章:

vue 关于两个if条件中的promise

一、案例效果 期望if判断条件里的两个promise 都同时执行完成 二、 初始代码案例 const formatDetail async (fnArgsJsonParams: MapLogicType) > {if (fnArgsJsonParams?.targetFeatureName) {const resDetailData await formatFeatureInfo(fnArgsJsonParams.targetF…...

C/C++移位运算问题

目录 上期答案揭晓: 回忆: 问题1展现: 问题2展现: 改进方案: 下期预告:C语言类型转换的问题。 上期答案揭晓: 上期的问题大家是否都有了想法,下面说说我的思路。 上次我们提到…...

录屏工具 Icecream Screen Recorder PRO v7.41

Icecream Screen Recorder的免费屏幕录制工具,具备捕捉视频、音频、图片和游戏等多种功能。以前推荐过的icecreamPDF也是他家的非常好用! 下载链接:「录屏」来自UC网盘分享https://drive.uc.cn/s/b474616b91534...

解决连接不上Linux和服务器中的Nacos(Windows中能连接但是Linux中却不行)

报错 com.alibaba.nacos.shaded.io.grpc.StatusRuntimeException: UNKNOWN: Uncaught exception in the SynchronizationContext. Re-thrown. at com.alibaba.nacos.shaded.io.grpc.Status.asRuntimeException(Status.jav 2024-08-13T10:21:52.93708:00 ERROR 27764 --- …...

【LLM大语言模型-开篇】LLM入门实践指南

"LLM入门实践指南"是一个通过代码实践,为大模型入门读者提供全面且较为深入的大模型技术视角的教程。 为何关注LLM? 创新与变革:LLM不仅推动了自然语言处理(NLP)领域的进步,还在诸多行业中催生了…...

实时视频换脸、8 万家 AI 公司消失、论文天价售卖、新的 scaling law、爆火毒舌 AI | AI 掘金视界周刊第 5 期

AI 视界周刊由战场小包维护,每周一更新,包含热点聚焦、应用破局、学术前沿、社区热议、智见交锋、跨界 AI、企业动态和争议 AI 八大板块,后续板块划分和内容撰写在周刊迭代过程中持续优化,欢迎大家提出建议。 欢迎大家来到《AI 视…...

XSS靶场(1-11关)

目录 简述xss xss第1关 xss第2关 ​编辑 xss第3关 xss第4关 xss第5关过滤了 on script xss第6关 xss第7关 xss第8关 xss第9关 xss第10关 xss11关 我把源代码靶场放到了最顶端 简述xss XSS攻击通常指的是通过利用网页开发时留下的漏洞,通过巧妙的方法…...

vue2 子组件props接收父组件对象或数组必须使用函数进行返回

export default{ name:MyComponent, props:{ title:{ type:String, default:"" }, age:{ type:Number, default:1 }, names:{ type:Array, //数组或对象必须用函数进行返回 default:function(){ return [] …...

【算法/学习】双指针

✨ 少年要迎着朝阳,活得肆无忌惮 🌏 📃个人主页:island1314 🔥个人专栏:算法学习 🚀 欢迎关注:👍点赞 &a…...

Springboot集成Liquibase笔记整理

添加依赖<dependency><groupId>org.liquibase</groupId><artifactId>liquibase-core</artifactId> </dependency>添加配置spring:liquibase:contexts: dev,testenabled: true编写liquibase配置类Configuration EnableConfigurationPropert…...

Python拆分无atlas图集(瑕疵版)

老板给了张没有atlas文件的图集让我拆图&#xff0c;简单写了一版凑合用。 存在的问题&#xff1a; 可能会拆出来一些小尺寸的透明像素图片&#xff1b;可能会拆出来一些偏大的小图的整体集合&#xff1b;可能会把应该是一块的小图批成两半&#xff0c;不过不多&#xff1b;其…...

SQLALchemy 排序

SQLALchemy 排序 基本用法多列排序使用函数或表达式进行排序注意事项在SQLAlchemy中,排序(Ordering)是通过order_by()方法实现的。这个方法允许你指定一个或多个列(或表达式),用于对查询结果进行排序。你可以指定升序(默认)或降序排序。 基本用法 假设你有一个User模…...

【iOS】Block底层分析

目录 前言Block底层结构Block捕获变量原理捕获局部变量&#xff08;auto、static&#xff09;全局变量捕获实例self Block类型Block的copyBlock作为返回值将Block赋值给__strong指针Block作为Cocoa API中方法名含有usingBlock的方法参数Block作为GCD API的方法参数Block属性的写…...

复现dom破坏案例和靶场

文章目录 靶场网址第一个实验步骤和原理(代码为示例要根据自己的实验修改) 第二个实验步骤和原理(代码为示例要根据自己的实验修改) 靶场网址 注册后点击 第一个实验 此实验室包含一个 DOM 破坏漏洞。注释功能允许“安全”HTML。为了解决这个实验&#xff0c;请构造一个 HT…...

【高校科研前沿】南方科技大学冯炼教授等人在遥感顶刊RSE发文:全球人类改造的基塘系统制图

1.文章简介 论文名称&#xff1a;Global mapping of human-transformed dike-pond systems&#xff08;全球人类改造的基塘系统制图&#xff09; 第一作者及单位&#xff1a;Yang Xu&#xff08;南方科技大学环境学院&#xff09; 第一通讯作者及单位&#xff1a;冯炼&#x…...

How to run angular CICD on gitlab-runner of wsl?

前提文件 .gitlab-ci.yml, .dockerignore, ci-funcs.sh, Dockerfile, karma.conf.js, nginx.conf, nginx-custom.conf, sonar-project.properties 1.test.ts const context require.context(./app/pages, true, /\.spec\.ts$/); 2.sonar-project.properties sonar.sourcessrc/…...

搭建Java集成开发环境IntelliJ IDEA

搭建Java集成开发环境&#xff08;Integrated Development Environment&#xff0c;简称IDE&#xff09;IntelliJ IDEA是一个涉及多个步骤的过程&#xff0c;旨在帮助Java开发者高效、舒适地进行编程工作。IntelliJ IDEA由JetBrains公司开发&#xff0c;以其强大的代码自动补全…...

JS逆向浏览器脱环境专题:事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决

&#x1f310;JS逆向浏览器脱环境专题&#xff1a;事件学习和编写、DOM和BOM结构、指纹验证排查、代理自吐环境通杀环境检测、脱环境框架、脱环境插件解决 &#x1f5a5;️ 浏览器事件学习和编写 浏览器事件是用户与网页交互的主要方式&#xff0c;了解并掌握这些事件的处理方…...

驾校预约学习系统--论文pf

TOC springboot373驾校预约学习系统--论文pf 第1章 绪论 1.1 课题背景 二十一世纪互联网的出现&#xff0c;改变了几千年以来人们的生活&#xff0c;不仅仅是生活物资的丰富&#xff0c;还有精神层次的丰富。在互联网诞生之前&#xff0c;地域位置往往是人们思想上不可跨域…...

交叉编译ARM平台的OpenCV1.0

首先,从http://www.opencv.org.cn下载1.0的源码包,然后解压出来,进入解压后的目录,再进行下面的修改: 将configure 文件下列内容注释掉(有两处)&#xff0c;只保留GTK_CFLAGS"" 、GTK_LIBS"" 、have_gtkno 三项内容&#xff08;如下黑体所示&#xff09;&…...

QGC二次开发---多机协同任务中的智能框选与指令批量下发

1. 多机协同作业的核心痛点与解决方案 在农业植保、物流配送等需要多架无人机协同作业的场景中&#xff0c;操作人员经常面临一个棘手问题&#xff1a;如何快速选择特定区域的无人机并批量下发指令&#xff1f;传统方法需要逐个点击无人机图标&#xff0c;效率低下且容易出错。…...

从零开始用Typora写技术文档:完整配置指南与高效排版秘籍

从零开始用Typora打造专业技术文档&#xff1a;配置、排版与效率全攻略 在技术写作领域&#xff0c;文档的呈现质量往往直接影响知识传递的效果。Typora作为一款轻量级Markdown编辑器&#xff0c;凭借其即时渲染、简洁界面和强大的扩展功能&#xff0c;已成为众多开发者和技术作…...

VHD/VHDX 数据守护:BAT位图校验与修复

VHD/VHDX 数据守护&#xff1a;BAT位图校验与修复VHD&#xff08;Virtual Hard Disk&#xff09;和 VHDX&#xff08;Virtual Hard Disk v2&#xff09;是微软 Hyper-V 等虚拟化平台常用的虚拟磁盘格式。在这些虚拟磁盘文件中&#xff0c;区块分配表&#xff08;Block Allocati…...

Amlogic S9XXX设备Armbian系统刷机全攻略:从问题诊断到优化配置

Amlogic S9XXX设备Armbian系统刷机全攻略&#xff1a;从问题诊断到优化配置 【免费下载链接】amlogic-s9xxx-armbian Supports running Armbian on Amlogic, Allwinner, and Rockchip devices. Support a311d, s922x, s905x3, s905x2, s912, s905d, s905x, s905w, s905, s905l,…...

告别微信传文件!用LocalSend+cpolar搭建私人远程文件库(Windows保姆级教程)

打造私人云存储&#xff1a;LocalSend与cpolar的极简文件共享方案 你是否经历过这样的场景&#xff1a;在咖啡馆急需调取家里电脑的一份文档&#xff0c;却只能对着微信传输助手的"文件大小超过限制"提示干着急&#xff1f;或是出差在外&#xff0c;发现手机里缺少一…...

3步让你的Windows 11性能提升60%:专业级系统优化工具Win11Debloat全解析

3步让你的Windows 11性能提升60%&#xff1a;专业级系统优化工具Win11Debloat全解析 【免费下载链接】Win11Debloat A simple, lightweight PowerShell script that allows you to remove pre-installed apps, disable telemetry, as well as perform various other changes to…...

Windows/Mac双平台实测:FORCE PRO 6.3.0求解器从注册到下载的完整配置流程

Windows/Mac双平台实测&#xff1a;FORCE PRO 6.3.0求解器从注册到下载的完整配置流程 在工程优化与控制领域&#xff0c;FORCE PRO求解器凭借其高效的数值计算能力和灵活的接口设计&#xff0c;已成为众多开发者的首选工具。最新发布的6.3.0版本在算法效率和平台兼容性上都有…...

qstock量化分析:3行代码实现多市场数据获取与可视化

qstock量化分析&#xff1a;3行代码实现多市场数据获取与可视化 【免费下载链接】qstock qstock由“Python金融量化”公众号开发&#xff0c;试图打造成个人量化投研分析包&#xff0c;目前包括数据获取&#xff08;data&#xff09;、可视化(plot)、选股(stock)和量化回测&…...

手把手教你用Cloudflare免费RPC节点开发以太坊应用

从零构建以太坊DApp&#xff1a;Cloudflare免费RPC节点实战指南 当你在深夜调试智能合约时&#xff0c;是否曾被突然失效的RPC节点打断思路&#xff1f;作为以太坊开发者&#xff0c;稳定可靠的节点连接是开发流程中最基础却最容易被忽视的一环。Cloudflare提供的免费以太坊RPC…...

Ubuntu 18.04 + CUDA 11.3 下,手把手教你搞定 MinkowskiEngine 的编译安装(附避坑指南)

Ubuntu 18.04 CUDA 11.3 环境下的 MinkowskiEngine 编译实战指南 在3D点云处理和稀疏卷积领域&#xff0c;MinkowskiEngine 凭借其高效的稀疏张量计算能力已成为研究者的重要工具。然而&#xff0c;其复杂的依赖关系和编译过程常常让开发者望而却步。本文将基于 Ubuntu 18.04…...