map合并数据

news2024/9/21 16:35:40

 

 

 

printNodeProperties(node, data, type) {
			if (type === 'preview') {
				console.log(333)
				this.selectedNodes = [] // 清空之前收集的节点
				this.filteredData.forEach((rootNode) => {
					this.collectPreviewNodes(rootNode) // 递归收集节点
				})
				// 所有具有预览功能的节点
				console.log('具有 preview 为 true 的节点:', this.selectedNodes)
				this.preview = this.selectedNodes.map((node) => {
					return {
						id: node.id,
						preview: true,
						download: node.download == null ? false : true,
					}
				})
				// console.log(preview)
			} else if (type === 'download') {
				console.log(222)
				this.selectedNodes1 = [] // 清空之前收集的节点
				this.filteredData.forEach((rootNode) => {
					this.collectDownloadNodes(rootNode) // 递归收集节点
				})
				// 所有具有下载功能的节点
				console.log('具有 download 为 true 的节点:', this.selectedNodes1)
				this.download = this.selectedNodes1.map((node) => {
					return {
						id: node.id,
						preview: node.preview == null ? false : true,
						download: true,
					}
				})
			}
			// 合并 preview 和 download 数组
			const mergedArray = this.preview.concat(this.download)

			// 根据 id 属性进行分组
			const groupedData = mergedArray.reduce((acc, current) => {
				const id = current.id
				if (!acc[id]) {
					acc[id] = { id, preview: false, download: false }
				}

				if (current.preview) {
					acc[id].preview = true
				}

				if (current.download) {
					acc[id].download = true
				}

				return acc
			}, {})

			// 将分组后的数据转换回数组形式
			const mergedResult = Object.values(groupedData)
			this.userList = mergedResult
		},

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1080563.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Gradle安装

文章目录 官网配置环境变量 官网 Gradle官网:https://gradle.org/ Gradle官方下载安装教程页面:https://gradle.org/install/ Gradle官方用户手册:https://docs.gradle.org/current/userguide/userguide.html 注意: 1.SpringBoo…

华为数通方向HCIP-DataCom H12-831题库(多选题:221-240)

第221题 以下哪些项能被正则表达式^30.成功匹配? A、200 100 300 B、100 200 300 C、300 200 100 D、300 100 200 答案:CD 解析: 30.其中的“点”表示的是任何的一个数字,表示的是as-path的开头;所以以300开头的都是满足题目需求的。 第222题 以下哪些项的Community属性能…

Jetson Orin NX 开发指南(3): 安装 ROS 系统

一、前言 由于本专栏主要介绍如何将 Jetson Orin NX 作为自主无人机的机载电脑,因此需要 ROS 操作系统来实现各个模块的衔接,ROS支持在Linux系统上安装部署,因为ROS与Ubuntu兼容性最好,使用它的首选开发平台是Ubuntu,…

YOLOv7改进: 多分支卷积模块RFB,扩大感受野提升小目标检测精度

💡💡💡本文属于原创独家改进:多分支卷积模块RFB,使用不同的卷积核,设计了多分支的conv、pooling操作(makes use of multi-branch pooling with varying kernels),扩大感受野提升小目标检测精度 RFB | 亲测在多个数据集实现涨点,对小目标效果佳; 收录: YOLO…

spy++ 用法

spy 用法 win10 64位系统 VC6 里面的SPYXX.EXE D:\safe_software\VC\vc6\VC6CN\COMMON\TOOLS\SPYXX.EXE 把那个红色框住的地方 ,拖动到 要监控的软件上面 点击OK 0000243F 9279 0111 Posted WM_COMMAND 另外一个版本的,不好用

批量给每一段文字 段落加上符号

批量给每一段文字 段落加上符号 例如 要给下面的内容统一加上[xxxxxxxx] 查找替换–>查找内容 :输入前面统一的标识 替换为:–>特殊格式–>查找内容–>全部替换 先在前面加符号 在后面加符号: 最后效果:

CPU vs GPU 的区别详解

今天我们将讨论 CPU 和 GPU 之间的区别,尽管两者用途相似,其应用领域却有所不同。CPU 更多用于传统桌面处理,而 GPU 的运算能力更多用于其他领域。以下我们将探讨其中的几个领域,以及 CPU 与 GPU 之间的一些关键区别。 为何需要两…

Xception:使用Tensorflow从头开始实现

一、说明 近年来,卷积神经网络已成为计算机视觉领域的主要算法,开发设计它们的方法一直是相当的关注。Inception模型似乎能够用更少的参数学习更丰富的表示。它们是如何工作的,以及它们与常规卷积有何不同?本文将用tensorflow实现…

Linux 网络编程 tcp server 笔记

一、TCP 服务器的创建 在 Linux 上创建一个简单的 tcp 服务器步骤如下: ①创建套接字 ②将套接字绑定到 IP 地址和端口号 ③监听来自客户端的连接 ④接受连接并创建新的套接字用于与客户端通信 ⑤通过新建的套接字发送和接收数据 ⑥关闭套接字 流程框图如下&#xf…

AI 法律助手与原创奇幻小说生成 | 开源专题 No.33

eosphoros-ai/DB-GPT Stars: 6.4k License: MIT DB-GPT是一个实验性的开源项目,利用本地化的GPT大型模型与数据和环境进行交互,旨在提供私密性和安全性的数据处理解决方案。 主要功能: SQL语言能力SQL生成和诊断私有领域问答和数据处理知识管理&#x…

AIGC Excel办公应用实现行与列交叉多条件求和

这样的一个多条件求和函数的应用,我们可以使用ChatGPT,OpenAI,人工智能来实现。 Prompt提示词: 有一个表格A3至A186为部门,B3至B186为月份,D3至D186为费用,请根据G2单元格的月份与F3的部门汇总费用,写出Excel函数公式,并且加上绝对引用与相对引用,可以向右填充与向…

在北欧设计中,有种轻奢叫石膏线。福州中宅装饰,福州装修

很多人在追求精致的路上, 大都选择一个喜欢的城市, 小到睫毛也要刷出太阳花。 在家装中,我们也追求更精致的家居生活。 现如今石膏线的运用也很广泛 有一个不起眼的东西, 它对于家装的精致感提升, 起到了画龙点…

Echarts图例图标和文字居中

前言:设置了verticalAlign:"middle",lineHeight,效果没有生效,然后通过设置文本的padding,实现居中。 代码实现:

FPGA面试题(3)

一.FPGA和CPLD区别 FPGA:现场可编程门阵列CPLD:复杂可编程逻辑器件 二.多位异步信号如何同步 单比特异步信号 慢时钟域->快时钟域:同步打拍快时钟域->慢时钟域:先拓展位宽再同步打拍 多比特异步信号 1.异步FIFO2.保持…

vs code 添加vue3代码模板方法

最终效果 vs code 添加vue文件模板用于通过简写自动生成代码 操作步骤如下 1.找到vue模板代码编写入口 2.修改模板内容 2.1 vue.json内容 {// Place your snippets for vue here. Each snippet is defined under a snippet name and has a prefix, body and// description. T…

生信学院|10月13日《SOLIDWORKS参数化应用——DriveWorksXpress》

课程主题:SOLIDWORKS参数化应用——DriveWorksXpress 课程时间:2023年10月13日 14:00-14:30 主讲人:温晓露 生信科技 售后服务工程师 1、DriveWorks的作用 2、用 DriveWorksXpress 自动化您的设计过程 3、Drive Works Xpress最佳做法 4…

Matlab地理信息绘图—研究区域绘制

文章目录 m_map工具箱Matlab绘制研究区域结果显示 m_map工具箱 m_map是 MATLAB 中用于制作地图和地理数据可视化的工具包。这个工具包提供了一组函数和工具,使得用户能够在 MATLAB 中轻松创建地图,并在地图上显示各种地理和气象数据。以下是 m_map 工具包…

nginx在windows下按照

Windows下Nginx的启动、停止等命令 可以进入到nginx的安装根目录,执行nginx.exe -h 在Windows下使用Nginx,我们需要掌握一些基本的操作命令,比如:启动、停止Nginx服务,重新载入Nginx等,下面我就进行一些简…

数仓面试题(1)

1.数据库的三范式是什么? 答: 第一范式(1NF) 强调的是列的原子性,即列不能够再分成其他几列。 第二范式(2NF) 第二范式在第一范式的基础之上更进一层。第二范式需要确保数据库表中的每一列…

海豚调度器集群安装DolphinScheduler(3.1.8)

一、前置准备工作 JDK:下载JDK (1.8),安装并配置 JAVA_HOME 环境变量,并将其下的 bin 目录追加到 PATH 环境变量中。如果你的环境中已存在,可以跳过这步。海豚调度器二进制包:下载 DolphinScheduler(3.1.8) 二进制包数据库: MySQL (5.7)注册中心:ZooKeeper (3.9.0)进程树…