Vue教学18:Element UI进阶组件探索,提升Vue应用的专业性
大家好,欢迎回到我们的Vue教学系列博客!在前十七篇博客中,我们学习了Vue.js的基础知识、安装Node.js与npm、使用Vue Devtools进行调试、Vue实例与生命周期钩子、数据绑定(单向与双向)、计算属性与侦听器、条件渲染和列表渲染、事件处理、组件之间的传值(props和$emit)、动态组件和异步组件、组件间的通信(provide/inject,event bus),探索并尝试安装一个基于Vue.js的UI框架——Element UI,以及学习如何使用Element UI的基础组件,如按钮、输入框、表格和弹窗。今天,我们将深入探讨并学习如何使用Element UI的进阶组件,以提升Vue应用的专业性。无论你是Vue新手小白,还是有一定基础的开发者,掌握Element UI的进阶组件都将大大提高你的开发效率。
一、ElCard:卡片组件
ElCard组件用于创建卡片布局,常用于展示详细信息或分组内容。
<template><div><el-card><div slot="header" class="clearfix"><span>卡片标题</span></div><div>卡片内容</div></el-card></div>
</template>
在这个例子中,我们创建了一个简单的卡片,包含一个标题和内容区域。
二、ElCollapse:折叠面板组件
ElCollapse组件用于创建可折叠的面板,常用于组织大量内容。
<template><div><el-collapse v-model="activeNames"><el-collapse-item title="面板一" name="1">内容一</el-collapse-item><el-collapse-item title="面板二" name="2">内容二</el-collapse-item></el-collapse></div>
</template><script>
export default {data() {return {activeNames: ['1']};}
};
</script>
在这个例子中,我们创建了一个折叠面板,包含两个可折叠的面板。通过设置v-model绑定到activeNames数组,我们可以控制面板的展开和收起。
三、ElSteps:步骤条组件
ElSteps组件用于创建步骤条,常用于任务流程或指南。
<template><div><el-steps :active="activeStep" finish-status="success"><el-step title="步骤1"></el-step><el-step title="步骤2"></el-step><el-step title="步骤3"></el-step></el-steps></div>
</template><script>
export default {data() {return {activeStep: 1};}
};
</script>
在这个例子中,我们创建了一个简单的步骤条,包含三个步骤。通过设置:active="activeStep",我们可以控制当前激活的步骤。
四、ElTimeline:时间线组件
ElTimeline组件用于创建时间线,常用于展示项目的时间节点或历史记录。
<template><div><el-timeline><el-timeline-item timestamp="2018-04-18" placement="top"><el-card><h4>标题</h4><p>描述信息</p></el-card></el-timeline-item><!-- ... 省略其他时间线项 --></el-timeline></div>
</template>
在这个例子中,我们创建了一个简单的时间线,包含一个时间节点和一个卡片。
五、ElCarousel:走马灯组件
ElCarousel组件用于创建走马灯轮播图,常用于展示图片或广告。
<template><div><el-carousel interval="5000" arrow="always"><el-carousel-item><h3>第一张</h3><p>描述信息</p></el-carousel-item><el-carousel-item><h3>第二张</h3><p>描述信息</p></el-carousel-item><!-- ... 省略其他轮播图项 --></el-carousel></div>
</template>
在这个例子中,我们创建了一个简单的走马灯轮播图,包含多个轮播图项。通过设置interval属性,我们可以控制轮播图的切换间隔时间。
六、ElRate:评分组件
ElRate组件用于创建评分组件,常用于商品评价或用户反馈。
<template><div><el-rate v-model="value" allow-half><el-rate-item></el-rate-item><el-rate-item></el-rate-item><el-rate-item></el-rate-item><el-rate-item></el-rate-item></el-rate></div>
</template><script>
export default {data() {return {value: 3};}
};
</script>
在这个例子中,我们创建了一个简单的评分组件,通过设置v-model绑定到value数据属性,我们可以控制评分组件的值。
七、ElCascader:级联选择器组件
ElCascader组件用于创建级联选择器,常用于地区选择或分类选择。
<template><div><el-cascader v-model="value" :options="options"></el-cascader></div>
</template><script>
export default {data() {return {value: [],options: [{value: 'zhejiang',label: '浙江',children: [{value: 'hangzhou',label: '杭州'},{value: 'nanjing',label: '南京'}]},{value: 'jiangsu',label: '江苏',children: [{value: 'shanghai',label: '上海'}]}]};}
};
</script>
在这个例子中,我们创建了一个简单的级联选择器,通过设置v-model绑定到value数据属性,我们可以控制级联选择器的值。
八、ElTree:树形选择器组件
ElTree组件用于创建树形选择器,常用于数据结构展示或分类选择。
<template><div><el-tree:data="treeData"ref="tree"node-key="id"default-expand-all:expand-on-click-node="false"><span class="custom-tree-node" slot-scope="{ node, data }"><span>{{ node.label }}</span></span></el-tree></div>
</template><script>
export default {data() {return {treeData: [{id: 1,label: '一级 1',children: [{id: 4,label: '二级 1-1'}]},{id: 2,label: '一级 2',children: [{id: 5,label: '二级 2-1'},{id: 6,label: '二级 2-2'}]},{id: 3,label: '一级 3',children: [{id: 7,label: '二级3-1’},{ id: 8, label: ‘二级 3-2’} ] } ] }; }
};
</script>
在这个例子中,我们创建了一个简单的树形选择器,通过设置`:data="treeData"`属性,我们可以绑定树形选择器的数据源。
九、ElColorPicker:颜色选择器组件
ElColorPicker组件用于创建颜色选择器,常用于颜色选择或调整。
<template><div><el-color-picker v-model="colorValue"></el-color-picker></div>
</template>
<script>
export default {data() {return {colorValue: '#409EFF'};}
};
</script>
在这个例子中,我们创建了一个简单的颜色选择器,通过设置v-model绑定到colorValue数据属性,我们可以控制颜色选择器的值。
十、ElUpload:文件上传组件
ElUpload组件用于创建文件上传功能,常用于文件上传或图片预览。
<template><div><el-upload:file-list="fileList":auto-upload="false":on-preview="handlePreview":on-remove="handleRemove":on-change="handleChange":on-success="handleSuccess":on-error="handleError"><el-button slot="trigger" size="small" type="primary">选取文件</el-button><el-buttonstyle="margin-left: 10px;"size="small"type="success"@click="submitUpload">上传到服务器</el-button><div slot="tip" class="el-upload__tip">只能上传jpg/png文件,且不超过500kb</div></el-upload></div>
</template><script>
export default {data() {return {fileList: [],file: null};},methods: {handlePreview(file) {console.log(file);},handleRemove(file, fileList) {console.log(file, fileList);},handleChange(file, fileList) {console.log(file, fileList);},handleSuccess(response, file, fileList) {console.log(response, file, fileList);},handleError(error, file, fileList) {console.log(error, file, fileList);},submitUpload() {this.$refs.upload.submit();}}
};
</script>
在这个例子中,我们创建了一个简单的文件上传组件,通过设置:file-list="fileList"属性,我们可以绑定文件列表。我们还定义了多个事件处理方法,用于处理文件预览、移除、改变、成功和错误等事件。
十一、总结
通过本博客的学习,我们深入了解了Element UI的进阶组件,包括卡片组件、折叠面板组件、步骤条组件、时间线组件、走马灯组件、评分组件、级联选择器组件、树形选择器组件、颜色选择器组件和文件上传组件。这些组件提供了丰富的功能和样式,可以帮助我们创建出更专业和高效的Vue应用。掌握Element UI的进阶组件对于提高Vue应用的专业性和用户体验至关重要。希望这篇博客能帮助你深入理解Element UI的进阶组件,并在实际项目中灵活运用。
如有任何疑问,欢迎在评论区留言讨论。让我们一起学习,共同进步!
往期教学请前往作者VUE专栏下查看
相关文章:
Vue教学18:Element UI进阶组件探索,提升Vue应用的专业性
大家好,欢迎回到我们的Vue教学系列博客!在前十七篇博客中,我们学习了Vue.js的基础知识、安装Node.js与npm、使用Vue Devtools进行调试、Vue实例与生命周期钩子、数据绑定(单向与双向)、计算属性与侦听器、条件渲染和列…...
UE5.1_TimeLine
UE5.1_TimeLine 问题引入:UE的Timeline可以在一个场景下无限制的使用多少次?一个动画流程的Timeline的时间持续怎么算?TimeLine中嵌套Timeline的做法是否是合理的?...

Qt自定义控件
自定义控件 目的:将多个控件或者窗口作为一个整体被多次复用。 操作方式 1.首先进行自定义的ui设计,以及对应的.h和.cpp文件 2.到要使用的UI界面上,从控件库中拖拽一个Widget控件 3.右键点击"提升为" 4.填写自定义实现的类名&…...

nRF52832——串口 UART 和 UARTE 外设应用
nRF52832——串口 UART 和 UARTE 外设应用 UART 和 UARTE 原理UART 功能描述UARTE 功能介绍 应用实例串口打印实例串口输入与回环UART 模式串口中断 UART 和 UARTE 原理 UART 功能描述 串口 UART 也称为通用异步收发器。是各种处理器中常用的通信接口,在 nRF52 芯…...

String 底层为什么使用 final 修饰?
1、典型回答 对于这个问题,Java之父詹姆斯 高斯林(James Gosling) 是这样回答的: I would use an immutable whenever I can 翻译为中文:只要允许,我就会使用不可变对象 而作为普通人的我们来说࿰…...

NIN网络中的网络
是什么 intro LeNet→AlexNet→VGG→NiN→GoogLeNet→ResNetLeNet→AlexNet→VGG 卷积层模块充分抽取空间特征全连接层输出分类结果AlexNet & VGG 改进在于把两个模块加宽 、加深(加宽指增加通道数,那加深呢?(层数增加叭 Ni…...

Cloudflare Tunnel:无惧DDOS_随时随地安全访问局域网Web应用
利用此方法,您可以在局域网(尤其是NAS)上搭建的Web应用支持公网访问,成本低而且操作简单! 如果这是博客的话,它还可以有效防止DDOS攻击! 准备工作: 需要一个域名(推荐N…...

高质量快刊!中科院1区TOP,Elsevier出版社,最快2个月23天录用!20天见刊!
【SciencePub学术】 01 期刊基本信息 【期刊简介】IF:11.0-11.5,JCR1区,中科院1区TOP 【出版社】Elsevier出版社 【版面情况】正刊,2023.3.31截稿 【检索情况】SCIE&EI双检,预计3个月左右录用 【征稿领域】…...

C++感受2-逐字逐句,深入理解C++最小例程
以 “Hello World” 例程为载体、线索,在完成 “间接名字空间限定” 写法转换到“直接名字空间限定”的过程,同时掌握函数、主函数、函数调用、级联操作、声明、类型、int、字符串类型、头文件包含、行为数据、流输出操作符、标准输出流对象、标准库名字…...

RabbitMQ 面试题及答案整理,最新面试题
RabbitMQ的核心组件有哪些? RabbitMQ的核心组件包括: 1、生产者(Producer): 生产者是发送消息到RabbitMQ的应用程序。 2、消费者(Consumer): 消费者是接收RabbitMQ消息的应用程序…...
字节算法-链表翻转与变形
文章目录 题目与变形解法 题目与变形 字节一面中关于 K个一组链表反转 的题目变形。 K个一组链表反转。K个一组链表反转,链表尾不足K个的元素也需要反转。K个一组链表反转,但是从链表尾部开始反转。反转从位置 left 到位置 right 的链表节点 解法 四…...
十一、软考-系统架构设计师笔记-未来信息综合技术
1、信息物理系统技术概述 信息物理系统的概念 信息物理系统(Cyber-Physical Systems,CPS)通过集成先进的感知、计算、通信、控制等信息技术和自动控制技术,构建了物理空间与信息空间中人、机、物、环境、信息等要素相互映射、适时交互、高效协同的复杂系…...

非同源点云尺度对齐及点云配准(cloudcompare软件)
1.点云裁减与尺度缩放 发现口扫stl转为的点云尺度是原始点云的1000倍 打开meshlab,通过“Filters” > “Mesh Layer” > “Transform: Scale”缩放1000倍,得到以米为单位的真实尺寸 此时在meshlab中进行点云手动裁减后效果 将ply文件转为xyz文件…...

体检业务数字化管理平台,健康体检管理系统(PEIS)源码
健康体检管理系统(PEIS)源码,自动生成体检报告,提供查询、统计和分析功能 健康体检管理系统(PEIS)可以建立完整的健康档案,系统实现了与HIS系统的无缝连接,着重于临床信息系统的应用…...

【SpringCloud微服务实战04】Nacos 配置中心
一、Nacos配置添加 二、Nacos配置读取 1、引入Nacos的配置管理客户端依赖: <!--nacos配置管理依赖--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</arti…...

无雀新功能宣传板之视频直播+Teambition
1. 今日新功能 钉钉视频会议新功能 视频会议功能,打造了一系列独具特色的通话海报模板供用户选择。其中引人瞩目的是为龙年限定的新春主题通话海报,它巧妙地融入了中国传统文化元素,将庄重且喜庆的龙年新春气息浓缩在画面之中。 自定义通话…...

学生选课系统的最简逻辑--一个学生选一门课
需求:设计一个学生选课系统,要求如下:有一个学生类,有一个课程类,还有一个Teacher类。。学生类包括姓名、学号、已选课程。课程类包括课程名称、授课老师属性。 老师包括老师的名字、老师的电话,老师的课程…...

波司登高德康:以有“韧性”的创新应变市场新浪潮
伴随着消费升级,羽绒服市场需求日益旺盛。愈发多元化的需求对于企业发展也有着更高的要求。如何更好推动行业多元化发展,可以从波司登的品牌升级、产品创新、模式创新、数字技术创新、绿色发展创新等方面窥得一二。 高德康总裁接受新华网主持人采访 对此…...
装饰你的APP:使用Lottie-Android创建动画效果
1. Lottie-Android简介 Lottie-Android是一个强大的开源库,由Airbnb开发,旨在帮助开发者轻松地在Android应用中添加高质量的动画效果。它基于Adobe After Effects软件中的Bodymovin插件,通过解析导出的JSON文件来渲染并播放复杂的矢量动画。 Lottie-Android提供了许多令人…...

成都爱尔林江院长解析巩膜镜是什么?它适合哪些人群
巩膜镜,全称为硬性透氧性巩膜接触镜,它有着特殊设计,大直径镜片像桥梁一样呈拱形覆盖角膜及角巩膜缘,从角膜上方横跨而过完全无接触、无任何机械性摩擦,最终贴合于巩膜。 巩膜镜的作用原理 光学成像: 配戴…...

Linux 文件类型,目录与路径,文件与目录管理
文件类型 后面的字符表示文件类型标志 普通文件:-(纯文本文件,二进制文件,数据格式文件) 如文本文件、图片、程序文件等。 目录文件:d(directory) 用来存放其他文件或子目录。 设备…...

iOS 26 携众系统重磅更新,但“苹果智能”仍与国行无缘
美国西海岸的夏天,再次被苹果点燃。一年一度的全球开发者大会 WWDC25 如期而至,这不仅是开发者的盛宴,更是全球数亿苹果用户翘首以盼的科技春晚。今年,苹果依旧为我们带来了全家桶式的系统更新,包括 iOS 26、iPadOS 26…...

【入坑系列】TiDB 强制索引在不同库下不生效问题
文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...
【ROS】Nav2源码之nav2_behavior_tree-行为树节点列表
1、行为树节点分类 在 Nav2(Navigation2)的行为树框架中,行为树节点插件按照功能分为 Action(动作节点)、Condition(条件节点)、Control(控制节点) 和 Decorator(装饰节点) 四类。 1.1 动作节点 Action 执行具体的机器人操作或任务,直接与硬件、传感器或外部系统…...
在Ubuntu中设置开机自动运行(sudo)指令的指南
在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...

Spring数据访问模块设计
前面我们已经完成了IoC和web模块的设计,聪明的码友立马就知道了,该到数据访问模块了,要不就这俩玩个6啊,查库势在必行,至此,它来了。 一、核心设计理念 1、痛点在哪 应用离不开数据(数据库、No…...

C++ Visual Studio 2017厂商给的源码没有.sln文件 易兆微芯片下载工具加开机动画下载。
1.先用Visual Studio 2017打开Yichip YC31xx loader.vcxproj,再用Visual Studio 2022打开。再保侟就有.sln文件了。 易兆微芯片下载工具加开机动画下载 ExtraDownloadFile1Info.\logo.bin|0|0|10D2000|0 MFC应用兼容CMD 在BOOL CYichipYC31xxloaderDlg::OnIni…...

Maven 概述、安装、配置、仓库、私服详解
目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

STM32HAL库USART源代码解析及应用
STM32HAL库USART源代码解析 前言STM32CubeIDE配置串口USART和UART的选择使用模式参数设置GPIO配置DMA配置中断配置硬件流控制使能生成代码解析和使用方法串口初始化__UART_HandleTypeDef结构体浅析HAL库代码实际使用方法使用轮询方式发送使用轮询方式接收使用中断方式发送使用中…...
MySQL 部分重点知识篇
一、数据库对象 1. 主键 定义 :主键是用于唯一标识表中每一行记录的字段或字段组合。它具有唯一性和非空性特点。 作用 :确保数据的完整性,便于数据的查询和管理。 示例 :在学生信息表中,学号可以作为主键ÿ…...