uniapp组件库中Collapse 折叠面板 的使用方法

目录

#平台差异说明

#基本使用

#控制面板的初始状态,以及是否可以操作

#自定义样式

#1. 如果修改展开后的内容?

#2. 如何自定义标题的样式?

#3. 如何修改整个Item的样式?

#API

#Collapse Props

#Collapse Item Props

#Collapse Event

#Collapse Item Event

#Collapse Methods

#Slot


通过折叠面板收纳内容区域

#平台差异说明

AppH5微信小程序支付宝小程序百度小程序头条小程序QQ小程序

#基本使用

默认为手风琴模式,即打开一个,另外所有的都会关闭。可以将u-collapseaccordion设置为false,这样可以允许打开多个面板

<template>
	<u-collapse>
		<u-collapse-item :title="item.head" v-for="(item, index) in itemList" :key="index">
			{{item.body}}
		</u-collapse-item>
	</u-collapse>
</template>

<script>
	export default {
		data() {
			return {
				itemList: [{
					head: "赏识在于角度的转换",
					body: "只要我们正确择取一个合适的参照物乃至稍降一格去看待他人,值得赏识的东西便会扑面而来",
					open: true,
					disabled: true
				},{
					head: "生活中不是缺少美,而是缺少发现美的眼睛",
					body: "学会欣赏,实际是一种积极生活的态度,是生活的调味品,会在欣赏中发现生活的美",
					open: false,
				},{
					head: "周围一些不起眼的人、事、物,或许都隐藏着不同凡响的智慧",
					body: "但是据说雕刻大卫像所用的这块大理石,曾被多位雕刻家批评得一无是处,有些人认为这块大理石采凿得不好,有些人嫌它的纹路不够美",
					open: false,
				}],
			}
		}
	}
</script>

#控制面板的初始状态,以及是否可以操作

  • 设置u-collapse-itemopen参数为true,可以让面板初始化时为打开状态
  • 如果设置u-collapse-itemdisabled参数为true,那么面板会保持初始状态,无法关闭或打开
<template>
	<u-collapse>
		<u-collapse-item :title="item.head" v-for="(item, index) in itemList" :key="index" :open="item.open" :disabled="item.disabled">
			{{item.body}}
		</u-collapse-item>
	</u-collapse>
</template>

<script>
	export default {
		data() {
			return {
				itemList: [{
					head: "赏识在于角度的转换",
					body: "只要我们正确择取一个合适的参照物乃至稍降一格去看待他人,值得赏识的东西便会扑面而来",
					open: true,
					disabled: true
				},{
					head: "生活中不是缺少美,而是缺少发现美的眼睛",
					body: "学会欣赏,实际是一种积极生活的态度,是生活的调味品,会在欣赏中发现生活的美",
					open: false,
				},{
					head: "周围一些不起眼的人、事、物,或许都隐藏着不同凡响的智慧",
					body: "但是据说雕刻大卫像所用的这块大理石,曾被多位雕刻家批评得一无是处,有些人认为这块大理石采凿得不好,有些人嫌它的纹路不够美",
					open: false,
				}],
			}
		}
	}
</script>

#自定义样式

在此组件中,可以通过多个方式对每个Item进行样式定义,我们可以从如下方面思考和着手:

#1. 如果修改展开后的内容?
  • 因为是通过默认的slot传入的(见上方示例),我们可以加一个view元素当做外层,在父组件给它添加样式,如下:
<template>
	<u-collapse :item-style="itemStyle" event-type="close" :arrow="arrow" :accordion="accordion" @change="change">
		<u-collapse-item :index="index" @change="itemChange" :title="item.head" v-for="(item, index) in itemList" :key="index">
			<view class="collapse-item">
				{{item.body}}
			</view>
		</u-collapse-item>
	</u-collapse>
</template>

<style scoped>
	.collapse-item {
		color: red;
		padding-bottom: 10px;
	}
</style>
  • 通过Collapsebody-style参数也可以配置主体内容的样式,需要注意上面的自定义slot内容如果在父组件定义了样式,会优先起作用。
#2. 如何自定义标题的样式?

如果想修改头部标题的字体大小,颜色等,可以通过head-style参数修改。

#3. 如何修改整个Item的样式?

有时候我们需要修改Item的整体样式,比如将各个Item之间隔开,这时我们可以通过item-style参数进行设置,比如:

<template>
	<u-collapse :item-style="itemStyle">
		......
	</u-collapse>
</template>

<script>
export default {
	data() {
		return {
			itemStyle: {
				marginTop: '20px'
			}
		}
	}
}
</script>

#API

#Collapse Props

参数说明类型默认值可选值
accordion是否手风琴模式Booleantruefalse
arrow是否显示标题右侧的箭头Booleantruefalse
arrow-color标题右侧箭头的颜色String#909399-
item-style1.3.0整个Item的自定义样式,对象形式Object--
head-styleItem的标题自定义样式,对象形式Object--
body-styleItem的主体自定义样式,对象形式Object--
hover-class样式类名,按下时有效,样式必须写在根目录的App.vue或通过其引入的全局样式中才有效,none为无效果,作用于头部标题区域Stringu-hover-classnone / 其他

#Collapse Item Props

参数说明类型默认值可选值
title面板标题String--
index主要用于事件的回调,标识那个Item被点击String / Number--
disabled面板是否可以打开或收起Booleanfalsetrue
open设置某个面板的初始状态是否打开Booleanfalsetrue
name唯一标识符,如不设置,默认用当前collapse-item的索引值String / Number--
align标题的对齐方式Stringleft-
active-style不显示箭头时,可以添加当前选择的collapse-item活动样式,对象形式Object--

#Collapse Event

注意:请在<u-collapse></u-collapse>上监听此事件

事件名说明回调参数
change当前激活面板展开时触发(如果是手风琴模式,参数activeNames类型为String,否则为Array)activeNames: String / Array

#Collapse Item Event

注意:请在<u-collapse-item></u-collapse-item>上监听此事件

事件名说明回调参数
change某个item被打开或者收起时触发对象,{index: index, show: true | false },index为collapse-itemindex参数,show为true表示被打开,false表示被收起

#Collapse Methods

注意:此方法需要通过ref调用

方法说明
init 1.3.8重新初始化内部高度计算,用于异步获取内容的情形,请结合this.$nextTick()使用

#Slot

名称说明
-主体部分的内容
title 1.3.5头部的内容,不含右边的箭头
title-all 1.3.5整个头部的内容,包含右边的箭头

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

ORM-06-jooq 入门介绍

拓展阅读 The jdbc pool for java.(java 手写 jdbc 数据库连接池实现) The simple mybatis.&#xff08;手写简易版 mybatis&#xff09; JOOQ JOOQ 可以通过数据库直接生成 java 代码&#xff0c;通过 flent-api 进行数据库操作。 SQL builder JOOQ 非常的灵活和强大。你可…

深入理解旅游网站开发:Java+SpringBoot+Vue+MySQL的实战经验

✍✍计算机编程指导师 ⭐⭐个人介绍&#xff1a;自己非常喜欢研究技术问题&#xff01;专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目&#xff1a;有源码或者技术上的问题欢迎在评论区一起讨论交流&#xff01; ⚡⚡ Java实战 |…

flink内存管理(三):MemorySegment内存使用场景:托管内存与网络内存

文章目录 一.ManagedMemory&#xff08;算子&#xff09;内存的申请与使用1. tm内存申请与使用大致流程2. 创建MemoryManager实例3. 算子使用通过MemoryManager使用内存4. ManagedMemory内存空间申请流程 二.NetworkBuffer内存申请与使用1. NetworkBuffer构造器 在Flink内存模型…

Windows11 Copilot助手开启教程(免费GPT-4)

Windows11上开启Copilot助手教程踩坑指南 Copilot介绍Copilot开启步骤1、更新系统2、更改语言和区域3、下载 ViVeTool 工具4、开启Copilot 使用 Copilot介绍 Windows Copilot 是 Windows 11 中的一个新功能&#xff0c;它可以让你与一个智能助理进行对话&#xff0c;获取信息&…

树莓派无显示屏连接

终端命令控制树莓派关机 1&#xff1a;用网线连接树莓派 按照正常的步骤 &#xff0c;搜索控制面板&#xff0c;网络和internet&#xff0c;网络和共享中心&#xff0c;更改适配器设置&#xff0c;右键WIFI&#xff0c;点击属性&#xff0c;点击共享&#xff0c;打勾允许即可&…

5G安卓手机定制_基于天玑900的安卓主板方案

5G安卓手机方案是一款采用联发科MT6877(天玑900)平台的高性能、可运行安卓操作系统的5G智能模块。该手机采用台积电6纳米低功耗工艺&#xff0c;主频高达2.4GHz&#xff0c;内存支持LPDDR5&#xff0c;并支持5G Sub-6GHz全频段和5G双载波聚合技术等多种制式。同时&#xff0c;该…

Typora1.7.6安装、激活、图床设置和使用

1.安装Typora 双击”typora-setup-x64-1.7.6.exe“安装包。 如果之前安装过先卸载&#xff0c;删除原文件夹。 Typora 1.7.6下载 提取码&#xff1a;ix2b 选择“Install for all users”。 图1-1 选择安装模式 选择安装目录&#xff0c;然后选择“Next”。 图1-2 选择安装路…

23111 C++ day2

思维导图 自己封装一个矩形类(Rect)&#xff0c;拥有私有属性:宽度(width)、高度(height),定义公有成员函数: 初始化函数:void init(int w, int h)更改宽度的函数:set_w(int w)更改高度的函数:set_h(int h) 输出该矩形的周长和面积函数:void show() #include <iostream&g…

web安全学习笔记【10】——数据包分析

基础[1] [2] [3] [4] 入门-HTTP数据包&Postman构造&请求方法&请求头修改&状态码判断[5] [6] [7] #知识点&#xff1a; 1、Web常规-系统&中间件&数据库&源码等 2、Web其他-前后端&软件&Docker&分配站等 3、Web拓展-CDN&WAF&OS…

go语言(十三)-----interface

一、Interface 通用万能类型 空接口int&#xff0c;string&#xff0c;float&#xff0c;struct都实现了interface都可以用interface{}类型,引用任意的数据类型 package mainimport "fmt"//interface()是万能数据类型 func myFunc(arg interface{}) {fmt.Println(&…

pycharm中无法使用anaconda虚拟环境

anaconda里创建了虚拟环境&#xff0c;然后在虚拟环境中明明安装了TensorFlow1.12&#xff0c;但是到pycharm中使用anaconda的虚拟环境时&#xff0c;就是没有TensorFlow1.12&#xff0c;注意下面这幅图 里面有一个选项“use conda package manager”&#xff0c;这个默认是勾…

聊聊 程序员裁员潮:技术变革下的职业危机

前几天一则新闻爆料&#xff1a;一对来自中国的工程师夫妻在美身亡&#xff0c;疑因谷歌裁员致悲剧发生。看到后深感可惜&#xff0c;鲜活的生命就因为裁员殒落了&#xff1b;同时我也深有感触&#xff0c;有幸经历过裁员&#xff0c;体会过那一段低迷不振的日子。 但是回首当下…

Aleo项目详细介绍-一个兼顾隐私和可编程性的隐私公链

Aleo上线在即&#xff0c;整理一篇项目的详细介绍&#xff0c;喜欢的收藏。有计划做aleo节点的可交流。 一、项目简介 Aleo 最初是在 2016 年构思的&#xff0c;旨在研究可编程零知识。公司由 Howard Wu、Michael Beller、Collin Chin 和 Raymond Chu 于 2019 年正式成立。 …

Docker 和 Kubernetes:容器化时代的崛起与演变

在过去的十年间&#xff0c;容器化技术彻底改变了软件开发和部署的面貌。 Docker 的登场无疑是这场变革的催化剂&#xff0c;它将应用和服务的打包、分发、部署流程标准化&#xff0c;让开发者的生活变得更加简单。 紧随其后&#xff0c;Kubernetes 作为容器编排的领军者&#…

文旅AI交互数字人,提升景区数字化导览服务体验

随着数字化的普及&#xff0c;文化旅游逐渐走向数字化&#xff0c;通过数字人技术手段对文化旅游资源进行整合与开发。 AI交互数字人可以部署于交互式终端设备和移动端&#xff0c;可以为游客提供“面对面”的语音交互&#xff0c;提供路径规划、游览路线推荐、景点讲解等服务&…

IP被封怎么办?访问网站时IP被阻止?解决IP禁令全方法

相信很多人遇到过IP禁令&#xff1a;比如你在访问社交媒体、搜索引擎或电子商务网站时会被限制访问&#xff0c;又或者你的的账号莫名被封&#xff0c;这些由于网络上的种种限制我们经常会遭遇IP被封的情况&#xff0c;导致无法使用继续进行网络行动。在本文中&#xff0c;我们…

【Leetcode】2859. 计算 K 置位下标对应元素的和

文章目录 题目思路代码结果 题目 题目链接 给你一个下标从 0 开始的整数数组 nums 和一个整数 k 。 请你用整数形式返回 nums 中的特定元素之和 &#xff0c;这些特定元素满足&#xff1a;其对应下标的二进制表示中恰存在 k 个置位。 整数的二进制表示中的 1 就是这个整数的…

数灵通让抖音跳转微信公众号更方便

当提到抖音跳转微信&#xff0c;人们通常指的是在抖音平台上利用一些方法将用户引导到企业的微信公众号。以下是关于如何实现这一目标的一些建议&#xff1a; 1.扫码跳转&#xff1a;在抖音视频或动态中嵌入一个二维码&#xff0c;用户扫描后可自动跳转至微信公众号页面。 2.个…

ERA ·Era Network:Web3.0社交的破局者

在当今数字化环境中&#xff0c;互联网的集中化严重制约了个人对数据的控制权&#xff0c;引发了对数据隐私、所有权和自主权的重大关切。这一问题尤其在社交网络、数据存储和内容传输等关键领域表现得尤为明显&#xff0c;用户常常感到无法充分掌握自己的数字身份和个人数据。…

IDEA 中怎么查看 Maven 依赖关系图

程序员的公众号&#xff1a;源1024&#xff0c;获取更多资料&#xff0c;无加密无套路&#xff01; 最近整理了一份大厂面试资料《史上最全大厂面试题》&#xff0c;Springboot、微服务、算法、数据结构、Zookeeper、Mybatis、Dubbo、linux、Kafka、Elasticsearch、数据库等等 …