vue对两个多重数组对象进行筛选过滤

两个数组对象,进行筛选

  • 两个数组
    • options 里面数据被选中时,返回datas中对应的数据
    • 最近当点击时调用过滤方法

两个数组

数组1: options=  [
{activeValue:'value值11' , name:'名称1', value:'value值1'},
{activeValue: null , name:'名称2', value:'value值2'},
{activeValue: null , name:'名称3', value:'value值3'},
{activeValue: null , name:'名称4', value:'value值4'}
]
数组2: datas = [
{rname: '数据1', id: 123, list : [
{name: '名称1', value:'value值1'},
{name:'名称2', value:'value值2'},
{name:'名称3', value:'value值3'},
{name:'名称4', value:'value值4'},
]},
{rname: '数据2', id: 6666, list : [
{name: '名称1', value:'value值11'},
{name:'名称2', value:'value值2'},
{name:'名称3', value:'value值3'},
{name:'名称4', value:'value值4'},
]},
{rname: '数据3', id: 3333, list : [
{name: '名称1', value:'value值11'},
{name:'名称2', value:'value值2'},
{name:'名称3', value:'value值333'},
{name:'名称4', value:'value值4'},
]},
]

options 里面数据被选中时,返回datas中对应的数据

这里写一个公共的方法对数据进行过滤

// 过滤数据  options-选项配置  datas-列表数据filterData(options, datas) {// 用于记录已选择配置的数据对象const filterParams = {}; // { "蓝牙/车载电话": "无", "GPS导航系统", "无" }options.forEach((item) => {filterParams[item.name] = item.activeValue;});// 过滤列表数据let res = [];res = datas.filter((item) => {let flag = false; // true表示存在不匹配的条件flag = item.list.some((item) => {return filterParams[item.name] && (filterParams[item.name] != item.value);});return !flag;});return res;},

最近当点击时调用过滤方法

onClickConfig(v, item) {let arr = []item.activeValue = item.activeValue ===  v ? null : vthis.newData = this.filterData(this.options, this.datas) || []},

功能实现,记录一下,供以后查阅

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

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

相关文章

大数据开发(Hadoop面试真题-卷二)

大数据开发(Hadoop面试真题) 1、在大规模数据处理过程中使用编写MapReduce程序存在什么缺点?如何解决这些问题?2、请解释一下HDFS架构中NameNode和DataNode之间是如何通信的?3、请解释一下Hadoop的工作原理及其组成部分…

关于axios的小知识

发请求1 axios({method: GET, //请求类型url:路径, //设置请求路径data:{ //设置请求体title: "afafa"author: "afafa"} }).then(response > {console.log(response); }) 发请求2 axios.request({method: GET,url: 路径 }).then(response &…

【力扣白嫖日记】626.换座位

前言 练习sql语句,所有题目来自于力扣(https://leetcode.cn/problemset/database/)的免费数据库练习题。 今日题目: 626.换座位 表:Seat 列名类型idintstudentvarchar id 是该表的主键(唯一值&#xf…

寒假作业Day 06

寒假作业Day 06 一、选择题 1、关于内存管理,以下有误的是( ) A: malloc在分配内存空间大小的时候是以字节为单位 B: 如果原有空间地址后面还有足够的空闲空间用来分配,则在原有空间后直接增加新的空间,使得增加新空…

初阶数据结构:二叉树(补充扩展)

目录 1. 堆排序1.1补充:建堆的时间复杂度1.2 堆排序:升序与降序 2. TopK问题3. 二叉树的链式结构及其遍历方式3.1 二叉树的链式结构3.2 二叉树的前序遍历2.2 二叉树的中序遍历2.3 后序遍历2.4 层序遍历 4. 二叉树OJ练习4.1 单值二叉树4.2 判断两棵二叉树…

Qt之QPluginLoader使用插件子项目及插件间通信(简易框架)(含部分源码+注释)

文章目录 一、项目示例1.导航栏操作页面操作示例图2.打开所有页面操作示例图3.打开指定界面操作示例图3.插件重载操作演示 二、插件逻辑个人理解1.QPluginLoader的简单使用2.子插件的基本要素 三、项目结构(思路)简述1.定义插件接口类2.定义插件类别一个…

提取阿里国际站商家电话的爬虫软件

引言: 随着电子商务的快速发展,越来越多的商家选择在阿里国际站上开设店铺。然而,对于想要联系某些商家或者进行商务合作的人来说,商家的联系电话往往是非常重要的信息。在这篇文章中,我们将介绍如何使用爬虫软件提取阿里国际站商…

装箱问题(贪婪策略:首次适应递减(First Fit Decreasing, FFD))

装箱问题(贪婪策略:首次适应递减(First Fit Decreasing, FFD)) 装箱问题是一种典型的组合优化问题,它可以用多种贪婪(greedy)策略来解决。贪婪算法通过在每一步选择当前最优的解决方案&#xf…

IDEA推荐使用十大插件

在本文中,我们将介绍 10 多个最好的 IntelliJ IDEA 插件,以提高工作效率并在更短的时间内完成更多工作。如果将这些插件合并到您的工作流程中,您将能够更有效地应对开发挑战。 1、TabNine TabNine 是一个 IntelliJ IDEA 插件,可…

c# 获取oracle 表及表内容

1、 /// <summary> /// 获取表名列 /// </summary> /// <param name"owner"></param> private void GetTableNameList(string owner) { TableNameGridList.Clear(); GetT…

YOLOv5语义分割7.0推理代码封装

YOLOv5语义分割7.0推理代码封装 YOLOv5语义分割7.0推理代码封装 YOLOv5语义分割7.0推理代码封装 import argparse import os import numpy as np import re import sys from pathlib import Path import torchFILE = Path(__file__).resolve() ROOT = FILE.parents[1

C/C++ 纸张尺寸问题(蓝桥杯)

题目描述&#xff1a; 在 ISO 国际标准中定义了 A 0 A0A0 纸张的大小为 1189 m m 841 m m 1189mm841mm1189mm841mm&#xff0c;将 A 0 A0A0 纸沿长边对折后为 A 1 A1A1 纸&#xff0c;大小为 841 m m 594 m m 841mm594mm841mm594mm&#xff0c;在对折的过程中长度直接取下整…

CSS常用选择器(通配符选择器,标签选择器,类选择器,id选择器……),你知道了多少?

目录 CSS常用选择器 一、什么是选择器 二、通配符选择器 基本语法格式&#xff1a; 三、标签选择器 基本语法格式&#xff1a; 四、类选择器 基本语法格式&#xff1a; 五、id选择器 基本语法格式&#xff1a; 六、类选择器还是 ID 选择器&#xff1f; 区别 1&…

芯片设计后端遇到的各种文件类型和文件后缀

芯片设计后端遇到的各种文件类型和文件后缀 文件类型 描述 文件后缀 netlist网表文件 verilog文件格式&#xff0c;记录了芯片里各个instance的逻辑连接关系 .v (for Verilog netlists) Lib&#xff0c;liberty timing file 记录了cell的timing信息及一定power信息。有的…

Python自动化测试:API接口自动化——requests、webSocket

接口自动化测试1 一、requests二、简单示例1.导入/引入库2.请求与响应示例1>简单访问百度主页-GET请求2>简单的登录请求-POST请求3>保存cookies至头信息headers4>其他接口请求时携带headers 三、webSocketwebSocket连接与数据收发示例 本文介绍了借助Python的reque…

leetcode-重复的子字符串

459. 重复的子字符串 题解&#xff1a; 首先&#xff0c;我们需要找到字符串s的所有子串。然后&#xff0c;我们需要检查这些子串是否可以通过重复多次构成原字符串s。如果找到了这样的子串&#xff0c;返回True&#xff0c;否则返回False。 class Solution:def repeatedSub…

什么是同源策略?如何检测跨站点 WebSocket 劫持漏洞?post 表单跳转跨域问题、Ajax跨域请求、浏览器特性和安全策略、WebSocket 协议连接

什么是同源策略?如何检测跨站点 WebSocket 劫持漏洞?post 表单跳转跨域问题、Ajax跨域请求、浏览器特性和安全策略、WebSocket 协议连接。 同源策略(Same Origin Policy)是一种浏览器安全机制,用于保护用户的信息和数据安全。它限制了来自不同源(协议、域名、端口)的网页…

华为手环 8:返校季新宠,助力高效学习与健康生活

随着春节假期的结束&#xff0c;学生们也纷纷踏上了返校的旅途。新的学期&#xff0c;新的气象&#xff0c;让华为手环8为你的带来全新的智能生活体验。它不仅仅是一款风格多变的时尚手环&#xff0c;还拥有了智能消息提醒、100多种运动模式和睡眠监测等强大功能&#xff0c;让…

计算机设计大赛 深度学习疲劳驾驶检测 opencv python

文章目录 0 前言1 课题背景2 实现目标3 当前市面上疲劳驾驶检测的方法4 相关数据集5 基于头部姿态的驾驶疲劳检测5.1 如何确定疲劳状态5.2 算法步骤5.3 打瞌睡判断 6 基于CNN与SVM的疲劳检测方法6.1 网络结构6.2 疲劳图像分类训练6.3 训练结果 7 最后 0 前言 &#x1f525; 优…

基于springboot实现粮食仓库管理系统项目【项目源码+论文说明】计算机毕业设计

基于springboot实现粮食仓库管理系统演示 摘要 粮食作为人类生活的重要物质来源&#xff0c;在粮食流通过程中对于粮食仓库的管理不容忽视&#xff0c;随着我国粮食生产能力的提升以粮食存储管理的不断革新&#xff0c;粮食产量的增加为粮食仓储管理带来了挑战也带来了机遇&am…