当前位置: 首页 > news >正文

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应用的专业性

大家好&#xff0c;欢迎回到我们的Vue教学系列博客&#xff01;在前十七篇博客中&#xff0c;我们学习了Vue.js的基础知识、安装Node.js与npm、使用Vue Devtools进行调试、Vue实例与生命周期钩子、数据绑定&#xff08;单向与双向&#xff09;、计算属性与侦听器、条件渲染和列…...

UE5.1_TimeLine

UE5.1_TimeLine 问题引入&#xff1a;UE的Timeline可以在一个场景下无限制的使用多少次&#xff1f;一个动画流程的Timeline的时间持续怎么算?TimeLine中嵌套Timeline的做法是否是合理的&#xff1f;...

Qt自定义控件

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

nRF52832——串口 UART 和 UARTE 外设应用

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

String 底层为什么使用 final 修饰?

1、典型回答 对于这个问题&#xff0c;Java之父詹姆斯 高斯林&#xff08;James Gosling&#xff09; 是这样回答的&#xff1a; I would use an immutable whenever I can 翻译为中文&#xff1a;只要允许&#xff0c;我就会使用不可变对象 而作为普通人的我们来说&#xff0…...

NIN网络中的网络

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

Cloudflare Tunnel:无惧DDOS_随时随地安全访问局域网Web应用

利用此方法&#xff0c;您可以在局域网&#xff08;尤其是NAS&#xff09;上搭建的Web应用支持公网访问&#xff0c;成本低而且操作简单&#xff01; 如果这是博客的话&#xff0c;它还可以有效防止DDOS攻击&#xff01; 准备工作&#xff1a; 需要一个域名&#xff08;推荐N…...

高质量快刊!中科院1区TOP,Elsevier出版社,最快2个月23天录用!20天见刊!

【SciencePub学术】 01 期刊基本信息 【期刊简介】IF&#xff1a;11.0-11.5&#xff0c;JCR1区&#xff0c;中科院1区TOP 【出版社】Elsevier出版社 【版面情况】正刊&#xff0c;2023.3.31截稿 【检索情况】SCIE&EI双检&#xff0c;预计3个月左右录用 【征稿领域】…...

C++感受2-逐字逐句,深入理解C++最小例程

以 “Hello World” 例程为载体、线索&#xff0c;在完成 “间接名字空间限定” 写法转换到“直接名字空间限定”的过程&#xff0c;同时掌握函数、主函数、函数调用、级联操作、声明、类型、int、字符串类型、头文件包含、行为数据、流输出操作符、标准输出流对象、标准库名字…...

RabbitMQ 面试题及答案整理,最新面试题

RabbitMQ的核心组件有哪些&#xff1f; RabbitMQ的核心组件包括&#xff1a; 1、生产者&#xff08;Producer&#xff09;&#xff1a; 生产者是发送消息到RabbitMQ的应用程序。 2、消费者&#xff08;Consumer&#xff09;&#xff1a; 消费者是接收RabbitMQ消息的应用程序…...

字节算法-链表翻转与变形

文章目录 题目与变形解法 题目与变形 字节一面中关于 K个一组链表反转 的题目变形。 K个一组链表反转。K个一组链表反转&#xff0c;链表尾不足K个的元素也需要反转。K个一组链表反转&#xff0c;但是从链表尾部开始反转。反转从位置 left 到位置 right 的链表节点 解法 四…...

十一、软考-系统架构设计师笔记-未来信息综合技术

1、信息物理系统技术概述 信息物理系统的概念 信息物理系统(Cyber-Physical Systems&#xff0c;CPS)通过集成先进的感知、计算、通信、控制等信息技术和自动控制技术&#xff0c;构建了物理空间与信息空间中人、机、物、环境、信息等要素相互映射、适时交互、高效协同的复杂系…...

非同源点云尺度对齐及点云配准(cloudcompare软件)

1.点云裁减与尺度缩放 发现口扫stl转为的点云尺度是原始点云的1000倍 打开meshlab&#xff0c;通过“Filters” > “Mesh Layer” > “Transform: Scale”缩放1000倍&#xff0c;得到以米为单位的真实尺寸 此时在meshlab中进行点云手动裁减后效果 将ply文件转为xyz文件…...

体检业务数字化管理平台,健康体检管理系统(PEIS)源码

健康体检管理系统&#xff08;PEIS&#xff09;源码&#xff0c;自动生成体检报告&#xff0c;提供查询、统计和分析功能 健康体检管理系统&#xff08;PEIS&#xff09;可以建立完整的健康档案&#xff0c;系统实现了与HIS系统的无缝连接&#xff0c;着重于临床信息系统的应用…...

【SpringCloud微服务实战04】Nacos 配置中心

一、Nacos配置添加 二、Nacos配置读取 1、引入Nacos的配置管理客户端依赖&#xff1a; <!--nacos配置管理依赖--> <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alibaba-nacos-config</arti…...

无雀新功能宣传板之视频直播+Teambition

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

学生选课系统的最简逻辑--一个学生选一门课

需求&#xff1a;设计一个学生选课系统&#xff0c;要求如下&#xff1a;有一个学生类&#xff0c;有一个课程类&#xff0c;还有一个Teacher类。。学生类包括姓名、学号、已选课程。课程类包括课程名称、授课老师属性。 老师包括老师的名字、老师的电话&#xff0c;老师的课程…...

波司登高德康:以有“韧性”的创新应变市场新浪潮

伴随着消费升级&#xff0c;羽绒服市场需求日益旺盛。愈发多元化的需求对于企业发展也有着更高的要求。如何更好推动行业多元化发展&#xff0c;可以从波司登的品牌升级、产品创新、模式创新、数字技术创新、绿色发展创新等方面窥得一二。 高德康总裁接受新华网主持人采访 对此…...

装饰你的APP:使用Lottie-Android创建动画效果

1. Lottie-Android简介 Lottie-Android是一个强大的开源库,由Airbnb开发,旨在帮助开发者轻松地在Android应用中添加高质量的动画效果。它基于Adobe After Effects软件中的Bodymovin插件,通过解析导出的JSON文件来渲染并播放复杂的矢量动画。 Lottie-Android提供了许多令人…...

成都爱尔林江院长解析巩膜镜是什么?它适合哪些人群

巩膜镜&#xff0c;全称为硬性透氧性巩膜接触镜&#xff0c;它有着特殊设计&#xff0c;大直径镜片像桥梁一样呈拱形覆盖角膜及角巩膜缘&#xff0c;从角膜上方横跨而过完全无接触、无任何机械性摩擦&#xff0c;最终贴合于巩膜。 巩膜镜的作用原理 光学成像&#xff1a; 配戴…...

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…...

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 &#xff08;一&#xff09;实时滤波与参数调整 基础滤波操作 60Hz 工频滤波&#xff1a;勾选界面右侧 “60Hz” 复选框&#xff0c;可有效抑制电网干扰&#xff08;适用于北美地区&#xff0c;欧洲用户可调整为 50Hz&#xff09;。 平滑处理&…...

【OSG学习笔记】Day 18: 碰撞检测与物理交互

物理引擎&#xff08;Physics Engine&#xff09; 物理引擎 是一种通过计算机模拟物理规律&#xff08;如力学、碰撞、重力、流体动力学等&#xff09;的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互&#xff0c;广泛应用于 游戏开发、动画制作、虚…...

JVM垃圾回收机制全解析

Java虚拟机&#xff08;JVM&#xff09;中的垃圾收集器&#xff08;Garbage Collector&#xff0c;简称GC&#xff09;是用于自动管理内存的机制。它负责识别和清除不再被程序使用的对象&#xff0c;从而释放内存空间&#xff0c;避免内存泄漏和内存溢出等问题。垃圾收集器在Ja…...

学习STC51单片机31(芯片为STC89C52RCRC)OLED显示屏1

每日一言 生活的美好&#xff0c;总是藏在那些你咬牙坚持的日子里。 硬件&#xff1a;OLED 以后要用到OLED的时候找到这个文件 OLED的设备地址 SSD1306"SSD" 是品牌缩写&#xff0c;"1306" 是产品编号。 驱动 OLED 屏幕的 IIC 总线数据传输格式 示意图 …...

QT: `long long` 类型转换为 `QString` 2025.6.5

在 Qt 中&#xff0c;将 long long 类型转换为 QString 可以通过以下两种常用方法实现&#xff1a; 方法 1&#xff1a;使用 QString::number() 直接调用 QString 的静态方法 number()&#xff0c;将数值转换为字符串&#xff1a; long long value 1234567890123456789LL; …...

零基础在实践中学习网络安全-皮卡丘靶场(第九期-Unsafe Fileupload模块)(yakit方式)

本期内容并不是很难&#xff0c;相信大家会学的很愉快&#xff0c;当然对于有后端基础的朋友来说&#xff0c;本期内容更加容易了解&#xff0c;当然没有基础的也别担心&#xff0c;本期内容会详细解释有关内容 本期用到的软件&#xff1a;yakit&#xff08;因为经过之前好多期…...

技术栈RabbitMq的介绍和使用

目录 1. 什么是消息队列&#xff1f;2. 消息队列的优点3. RabbitMQ 消息队列概述4. RabbitMQ 安装5. Exchange 四种类型5.1 direct 精准匹配5.2 fanout 广播5.3 topic 正则匹配 6. RabbitMQ 队列模式6.1 简单队列模式6.2 工作队列模式6.3 发布/订阅模式6.4 路由模式6.5 主题模式…...

[ACTF2020 新生赛]Include 1(php://filter伪协议)

题目 做法 启动靶机&#xff0c;点进去 点进去 查看URL&#xff0c;有 ?fileflag.php说明存在文件包含&#xff0c;原理是php://filter 协议 当它与包含函数结合时&#xff0c;php://filter流会被当作php文件执行。 用php://filter加编码&#xff0c;能让PHP把文件内容…...

MyBatis中关于缓存的理解

MyBatis缓存 MyBatis系统当中默认定义两级缓存&#xff1a;一级缓存、二级缓存 默认情况下&#xff0c;只有一级缓存开启&#xff08;sqlSession级别的缓存&#xff09;二级缓存需要手动开启配置&#xff0c;需要局域namespace级别的缓存 一级缓存&#xff08;本地缓存&#…...