解决动态class展示问题
由于部分涉及到隐私,就打马赛克了

比如这个小问题,我有这个动态的class,里面是十几个类似btn的按钮,然后每个btn下面又有子多选框,一开始是我点击那个下面的子级他的父级就被选中,默认选中第一个父级btn的。
现在我需要展示那个下面有选中的多选框他的父级btn就被选中。
所以这句话的,前面的代码是点那个下面的子级他的父级就被选中,后面代码意思是子多选框如果存在选中的子级他父级btn就被选中,但是这样会出现一个问题他还是会默认选中第一个btn。
:class="[{active: item.open_kf_id == formState.staff_ids || selectedStaffIndex.includes(item.open_kf_id) }]"
解决办法就是给我们的state.formState.staff_ids默认设置成我们第一个存在的值,后期返现个问题在没有state.selectedStaffIndex[0]的时候什么都没有显示了,得加个判断
//设置默认为我们第一个有被选中的btn
if(state.selectedStaffIndex[0]){
state.formState.staff_ids = state.selectedStaffIndex[0]
}
下面是html代码
<div class="zm-staff-item zm-selected"
:class="[{active: item.open_kf_id == formState.staff_ids || selectedStaffIndex.includes(item.open_kf_id) }]"
v-for="(item,index) in staffs"
:key="index"
@click="changeStaff(item)"
style="margin: 8px 16px 8px 0">
<img class="zm-staff-avatar" :src="item.channel_logo"/>
<span class="zm-staff-name">{{ item.channel_name }}</span>
</div>
下面是逻辑代码
// //来显示btn下面是否有子级被选中
for(let k in selectedRowKeys.value){
let selectedStaffIds = selectedRowKeys.value[k].split(":")[0]
state.selectedStaffIndex.push(selectedStaffIds)
}
//设置默认为我们第一个有被选中的btn
state.formState.staff_ids = state.selectedStaffIndex[0]
为什么要遍历呢?
因为selectedRowKeys.value里面的值是这种形式的,我只需要前面的值即可。
Proxy {0: '1688858438367330:7881299760915111', 1: '1688857379337013:7881302848907550', 2: '1688857785347017:7881303547185489', 3: '1688857785347017:7881303527096379', 4: '1688857785347017:7881303349119228', 5: '1688857785347017:7881300212937189', 6: '1688857785347017:1688856975347519', 7: '1688857785347017:1688854059826920', 8: '1688857785347017:1688852014798866', 9: '1688858346379609:7881302170090986'}
[[Handler]]: Object
[[Target]]: Array(10)
0: "1688858438367330:7881299760915111"
1: "1688857379337013:7881302848907550"
2: "1688857785347017:7881303547185489"
3: "1688857785347017:7881303527096379"
4: "1688857785347017:7881303349119228"
5: "1688857785347017:7881300212937189"
6: "1688857785347017:1688856975347519"
7: "1688857785347017:1688854059826920"
8: "1688857785347017:1688852014798866"
9: "1688858346379609:7881302170090986"
length: 10
[[Prototype]]: Array(0)
[[IsRevoked]]: false
解决动态class展示问题的更多相关文章
- FineReport层式报表解决大数据集展示问题攻略
本文以填报报表为例,通过分页的方式,来解决大数据集展示的问题. 实现的思想就是通过在SQL里筛选部分数据库数据,以达到浏览器可以合理的展示报表页面.(数据分段,语句我这采用的是MYSQL,如果要用其他 ...
- ecshop 完美解决动态ip登录超时和购物车清空问题
ecshop 完美解决动态ip登录超时和购物车清空问题 ECSHOP模板/ecshop开发中心(www.68ecshop.com) / 2014-05-06 前一段时间,ECSHOP开发中心的一个客户 ...
- 《算法4》1.5 - Union-Find 算法解决动态连通性问题,Python实现
Union-Find 算法(中文称并查集算法)是解决动态连通性(Dynamic Conectivity)问题的一种算法,作者以此为实例,讲述了如何分析和改进算法,本节涉及三个算法实现,分别是Quick ...
- ExtJs 通过分析源代码解决动态加载Controller的问题
通过分析源代码解决动态加载Controller的问题 最近在研究ExtJs(4.2.0)的MVC开发模式,具体Extjs的MVC如何使用这里不解释,具体参见ExtJs的官方文档.这里要解决的问题是如何 ...
- scrapy-redis+selenium+webdriver解决动态代理ip和user-agent的问题(全网唯一完整代码解决方案)
问题描述:在爬取一些反爬机制做的比较好的网站时,经常会遇见一个问题就网站代码是通过js写的,这种就无法直接使用一般的爬虫工具爬取,这种情况一般有两种解决方案 第一种:把js代码转为html代码,然后再 ...
- NG-ZORRO + angular-cli11 表格横纵向单元格合并,按需设置背景色,解决动态合并单元格动态colspan情况下,nzLeft固定列失效问题,也适用VUE,REACT
NG-ZORRO + angular-cli11 实现表格横纵向单元格合并,按需设置背景色,并解决动态合并单元格动态colspan情况下,nzLeft固定列失效问题 HTML代码 <!-- 1. ...
- 如何使用DAX函数解决动态图表标题
您可能知道,Power BI中的图表(以及许多其他可视化)具有可以设置为任何静态文本的标题.您可以通过选择图表,转到“可视化对象”窗格中的“格式”选项卡,然后更改“标题”部分中的属性(如下所示)来完成 ...
- arcgis server 10.1 发布动态图层展示海量及频繁更新的数据步骤
Arcgis server 发布动态图层及调用动态图层 做这个动态图层功能的原由是 有一个30万的数据需要通过arcgis GP工具转成shp然后渲染加载进地图,原来的做法是遍历生成shp面要素,读 ...
- 2014-10-2 bug更新5 ecshop和ectouch解决动态ip登录超时和购物车清空问题
有客户说登陆网站后台操作的时候,会时不时的掉一下,要重新登陆才能继续操作,自动登出的频率快和时间短,针对这个问题是因为: 购物车问题原因的产生是因为动态IP的SESSEION机制导致很多在公司或者其他 ...
- 自拉ADSL网线搭建站点server,解决动态IP、无公网IP、80port被封、HTTP被屏蔽的方法
自己的server搭建站点应用,提供站点服务,能够不用备案,但可能会面对网络限制问题,如动态公网IP.无公网IP.80port被封.HTTP被屏蔽,这些复杂网络情况. 依据本地网络环境,能够针对不同的 ...
随机推荐
- 流程图draw.io自选中文字体
draw.io免费好用,完全可以取代Visio. 唯独缺省选择都是英文字体.但要选择中文字体也可以自行添加,步骤: 确保系统里已经安装了相应中文字体.ubuntu下Google思源字体在/usr/sh ...
- 一个好的程序应该像AK47
一个好的程序应该像AK47: 容易上手(配置.设置.功能描述清晰),结构简单(低耦合,模块化,单元化),拆装方便(安装部署.卸载.迁移很少有障碍),从不卡壳(已知业务冲突解决),故障率低(未知或可能出 ...
- dockerfile 打包镜像
打包镜像指令 docke人 build -t xxx -f dockerfile2 . xxx 镜像名称 -f 指定dockerfile2 文件 (多个文件的话) . 当前的上下文空间 dockerf ...
- Pytorch加载txt格式的数据集文件(以PTB数据集为例)
前言 这篇博客以PTB数据集为例,详细讲解了如何将txt格式的数据集文件,转换为pytorch框架可以直接处理的tensor变量,并附上相应代码 @ 目录 前言 1. PTB 数据集 2. 构建词汇表 ...
- mybatis-plus 使用 sql 分页
#分页工具类 /** * 分页参数处理 */public class PageUtil { /** * 分页返回数据封装 * * @param page * @return Map<String ...
- Linux编译安装中的--prefix
本文主要说明--prefix参数的作用,其主要用在编译安装源代码应用中的./configure环节. 1.源码安装一般包括几个步骤:配置(configure),编译(make),安装(make ins ...
- 直播平台制作,Android 悬浮窗延时5秒返回APP问题
直播平台制作,Android 悬浮窗延时5秒返回APP问题 案例需求分析:在APP界面,点击Home键后,APP退出后台,同时会打开一个悬浮窗,当用户点击悬浮窗上的按键会返回APP. 出现的问题是:点 ...
- vm-linux-格式化磁盘以及挂载
数据盘大小20g 文件系统xfs 分区工具fdisk 1,虚拟机关机状态,打开设置新添加一个20g硬盘 2,重新启动虚拟机,并登陆linux,打开命令窗口 3,对磁盘进行分区 输入 fdisk -l ...
- Delphi as 和 is 的使用
as就是把某个类型对象转换为某个指定类型,这样方便使用指定类型中的一些成员. is就是判断某个对象是不是某个类型,可以筛选出我们需要的对象. 下面是一个as is 的实例代码,该代码同时也实现了两种方 ...
- 提取可执行文件中的调试信息 objcopy --only-keep-debug app app.debug
https://blog.csdn.net/CaspianSea/article/details/17269977 set-debug-directory show-debug-directory i ...