vue3实现折叠面板

news2024/11/19 9:36:40

在这里插入图片描述
总是忘记vue怎么实现折叠面板,记录一下,没有动画样式。

 <div class="item-content padding15" style="font-size: 0.875rem;" @click="changeCollapse(index)" v-for="(item, index) in collData.dataList" :key="index" >
	<div class="flex justify-between items-center">
	  <div>
	    <span style="color: var(--fontColor);">{{ item.first }}</span>至
	    <span style="color: var(--fontColor);">{{ item.last }}</span>(8)
	  </div>
	  <el-icon v-if="collData.activeIndex.indexOf(index) != -1"><ArrowDown color="#262626" /></el-icon>
	  <el-icon v-else><ArrowRight color="#262626" /></el-icon>
	</div>
	<div class="gradient-wrapper" :class="collData.activeIndex.indexOf(index) != -1?'active':''">
	  <div class="marginT20" v-for="(org, ind) in item.orgList" :key="ind">
	    <div class="flex justify-between items-center padding10 marginB15 item-get-org">
	      <div class="item-get-name ellipsis">{{ org.name }}({{ org.unitName }})</div>
	      <el-icon :size="18" class="pointer"><CircleClose color="#AAAAAA" /></el-icon>
	    </div>
	  </div>
	</div>
	</div>

<script setup>
import {ref, reactive} from "vue";
const collData = reactive({
  dataList: [{
    first: 'k2',
    last: 'k12',
    orgList: [{
      name: '张三',
      unitName: '某某单位'
    }]
  },
  {
    first: 'k2',
    last: 'k12',
    orgList: [{
      name: '张三2',
      unitName: '某某单位'
    }]
  }],
  activeIndex: []
})
const changeCollapse = (index) => {
  if (collData.activeIndex.indexOf(index) == -1) {
    collData.activeIndex.push(index)
  } else {
    collData.activeIndex = collData.activeIndex.filter(item => item != index)
  }
}
</script>

<style scoped>
.item-content {
  margin: 15px 0;
  background: #f8f8f8;
  border-radius: 4px;
}
.item-unit-add {
  display: flex;
  flex-wrap: wrap;    
  padding: 10px 0;
}
.item-unit {
  padding-left: 15px;
  padding-right: 10px;
  margin: 5px;
  width: 96px;
  height: 40px;
  line-height: 40px;
  background: #F4F4F4;
  border: 1px solid #AAAAAA;
  border-radius: 4px;
  font-size: 0.875rem;
}
.item-get-org {
  background: #F4F4F4;
  border: 1px solid #AAAAAA;
  border-radius: 4px;
  font-size: 0.875rem;
}
.item-get-org:last-child {
  margin-bottom: 0;
}
.item-get-name {
  width: 80%;
}

.gradient-wrapper {
  height: 0;
  overflow: hidden;
}
.gradient-wrapper.active {
  height: 100%;
  transition: height .3s ease-in;
  transform-origin: 50% 0;
  animation: slide-down 0.3s ease-in;
  -webkit-animation: slide-down 0.3s ease-in;
}

@keyframes slide-down {
  0% {
    opacity: 0;
  }
  30% {
    opacity: .3;
  }
  60% {
    opacity: .6;
  }
  100% {
    opacity: .6;
  }
}

@-webkit-keyframes slide-down {
  0% {
    opacity: 0;
  }
  30% {
    topacity: .3;
  }
  60% {
    opacity: .6;
  }
  100% {
    opacity: .6;
  }
}
</style>

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

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

相关文章

mtk log、kernel log、adb log的详细使用

目录 mtk logkernel logadb log 打印MTK log&#xff0c;里面就包含了kernel层的log&#xff0c;像我们adb log打印的是上层应用的log&#xff0c;mtk log打印的则是更底层的log。 那么什么时候需要用到mtk log 呢&#xff1f; 就比如你想抓一些从关机到开机的log&#xff0c;…

基于 SpringBoot + Vue 的前后端分离的高校招生管理系统

【程序员徐师兄】&#xff1a;hello你好我是程序员徐师兄&#xff0c;6年大厂经验。很高兴你能来阅读&#xff0c;希望我们能不断精进&#xff0c;向着优秀程序员前行&#xff01; 博客来源于项目以及编程中遇到的问题总结&#xff0c;偶尔会有读书分享&#xff0c;我会陆续更新…

AICG - Stable Diffusion 的扩展插件 (Extensions) 的配置与使用

欢迎关注我的CSDN&#xff1a;https://spike.blog.csdn.net/ 本文地址&#xff1a;https://spike.blog.csdn.net/article/details/131576762 Prompt: (masterpiece, top quality, best quality, ((standing in centre)), ((1girl, black hair)), ((upper body, symmetrical com…

leetcode 141.环形链表 I - 142.环形链表 II 代码及指针相遇证明问题

⭐️ 环形链表 I 题目描述 给你一个链表的头节点 head &#xff0c;判断链表中是否有环。如果链表中有某个节点&#xff0c;可以通过连续跟踪 next 指针再次到达&#xff0c;则链表中存在环。 如果链表中存在环 &#xff0c;则返回 true 。 否则&#xff0c;返回 false 。 思…

Vue项目在IE浏览器页面白屏且报错SCRIPT1010:缺少标识符

背景 &#xff1a;Vue2 项目在谷歌浏览器运行好好的&#xff0c;在 IE 浏览器打开就会出现各种的问题。。 控制台报错 &#xff1a;SCRIPT1010: 缺少标识符 文件&#xff1a;app.403ea2d4.js&#xff0c;行&#xff1a;1&#xff0c;列&#xff1a;180 问题 &#xff1a; 同伴 …

Linux 中查找 IP 地址的方法

概要 在 Linux 系统中&#xff0c;经常需要查找 IP 地址以进行网络配置、故障排除或安全管理。无论是查找本地主机的 IP 地址还是查找其他设备的 IP 地址&#xff0c;本文将介绍三种简单的方法&#xff0c;帮助你在 Linux 中轻松找到所需的 IP 地址。 方法一&#xff1a;使用 i…

Greenplum数据库优化器——Join类型

join 类型语法支持 from语句允许JOIN表达式和表名列表&#xff0c;将joined_table从table_ref中分离出来&#xff0c;It may seem silly to separate joined_table from table_ref, but there is method in SQL’s madness: if you don’t do it this way you get reduce-redu…

【网络结构】——TinyViT 一种transformer的蒸馏方案

来自 Microsoft 摘要 TinyViT是一种新型的小型transformer&#xff0c;它们高效且可以在大规模数据集上进行预训练。TinyViT通过在预训练期间应用蒸馏来传输知识&#xff0c;将大型预训练模型的知识转移到小型模型中&#xff0c;同时使小型模型能够获得大量预训练数据的红利。…

hcip实验--RIP

实验实验要求 &#xff1a; 要求&#xff1a;R1-R2-R3-R4-R5 RIP 100运行版本2 R6-R7 RIP 200 运行版本1 1.使用合理IP地址规划网络&#xff0c;各自创建环回接口 2.R1创建环回 172.16.1.1/24 172.16.2.1/24 172.16.3.1/24 3.要求R4使用R2访问R1环回 4.减少路由条目数量&am…

AttributeError: ‘FreeTypeFont‘ object has no attribute ‘getsize‘

yolo训练时&#xff0c;yolo的训练项目报错&#xff0c;如下 w, h self.font.getsize(text) # text width, height AttributeError: ‘FreeTypeFont’ object has no attribute ‘getsize’ 说是字体没有getsize属性&#xff0c;实际看了一下&#xff0c;此属性存在&#xff0…

simulink 使能子模块 对应if else

Enabled Subsystem 使能子模块 这个值是对内部的全部变量↓ 对输出↓

web 页面布局:(一)align与表格布局

web 页面布局&#xff1a;&#xff08;一&#xff09;align与表格布局 古早时代页面布局 表格布局合并单元格表格布局的弃用 古早时代 之前&#xff0c;我们花费了一点时间&#xff0c;去了解了一下 html 的本质&#xff0c;那么&#xff0c;现在&#xff0c;我们就要尝试开始…

多元回归预测 | Matlab基于灰狼算法优化深度置信网络(GWO-DBN)的数据回归预测,matlab代码回归预测,多变量输入模型

文章目录 效果一览文章概述部分源码参考资料效果一览 文章概述 多元回归预测 | Matlab基于灰狼算法优化深度置信网络(GWO-DBN)的数据回归预测,matlab代码回归预测,多变量输入模型,matlab代码回归预测,多变量输入模型,多变量输入模型 评价指标包括:MAE、RMSE和R2等,代码质…

[Android JNI] --- JNI基础

1 JNI概念 什么是JNI JNI 全称 Java Native Interface&#xff0c;Java 本地化接口&#xff0c;可以通过 JNI 调用系统提供的 API。操作系统&#xff0c;无论是 Linux&#xff0c;Windows 还是 Mac OS&#xff0c;或者一些汇编语言写的底层硬件驱动都是 C/C 写的。Java和C/C不…

一款批量漏洞挖掘工具

介绍 QingScan一个批量漏洞挖掘工具&#xff0c;黏合各种好用的扫描器。 是一款聚合扫描器&#xff0c;本身不生产安全扫描功能&#xff0c;但会作为一个安全扫描工具的搬运工&#xff1b;当添加一个目标后&#xff0c;QingScan会自动调用各种扫描器对目标进行扫描&#xff0c…

一文读懂智能汽车滑板底盘

摘要&#xff1a; 所谓滑板式底盘&#xff0c;即将电池、电动传动系统、悬架、刹车等部件提前整合在底盘上&#xff0c;实现车身和底盘的分离,设计解耦。基于这类平台&#xff0c;车企可以大幅降低前期研发和测试成本&#xff0c;同时快速响应市场需求打造不同的车型。尤其是无…

系统架构设计师-软件工程(2)

一、需求工程 1、需求工程阶段划分 软件需求是指用户对系统在功能、行为、性能、设计约束等方面的期望。 【需求工程主要活动的阶段划分】 2、需求获取 3、需求分析 &#xff08;1&#xff09;数据流图&#xff08;DFD&#xff09; 简称DFD&#xff0c;它从…

LabVIEW开发矿用泵液压头测试系

LabVIEW开发矿用泵液压头测试系 在矿井中&#xff0c;矿用泵是用于排放矿井水的关键设备。如果不正常运行&#xff0c;矿山的生产必然受到严重影响&#xff0c;工人的生命也受到严重威胁。确保矿用泵能够正常运行非常重要。由于其运行条件非常恶劣&#xff0c;矿用泵的故障率高…

网络故障排除之Traceroute命令详解

概要 遇到网络故障的时候&#xff0c;你一般会最先使用哪条命令进行排障&#xff1f; 除了Ping&#xff0c;还有Traceroute、Show、Telnet又或是Clear、Debug等等。 今天安排的&#xff0c;是Traceroute排障命令详解&#xff0c;给你分享3个经典排障案例哈。 一. Traceroute…

ChatGPT 最佳实践指南之:写出清晰的指示

Write clear instructions 写出清晰的指示 GPTs can’t read your mind. If outputs are too long, ask for brief replies. If outputs are too simple, ask for expert-level writing. If you dislike the format, demonstrate the format you’d like to see. The less GPTs…