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

【第10章】Vue之Element Plus常用组件

文章目录

  • 前言
  • 一、表格
    • 1. 带斑马纹表格
    • 2. 展示
  • 二、分页
    • 1.国际化(中文)
    • 2.分页代码
    • 3. 展示
  • 三、表单
    • 1. 表单代码
    • 2. 展示
  • 四、卡片
    • 1. 卡片代码
    • 2. 展示
  • 总结


前言

通过上一章的快速入门,我们已经学习了按钮使用,接下来学习Element Plus的常用组件:

  • 表格
  • 分页
  • 表单
  • 卡片

一、表格

1. 带斑马纹表格

<template><el-table :data="tableData" stripe style="width: 100%"><el-table-column prop="name" label="姓名" width="180" /><el-table-column prop="address" label="地址" /><el-table-column prop="date" label="日期" width="180" /></el-table>
</template><script lang="ts" setup>
const tableData = [{date: '2016-05-03',name: 'Tom',address: 'No. 189, Grove St, Los Angeles',},{date: '2016-05-02',name: 'Tom',address: 'No. 189, Grove St, Los Angeles',},{date: '2016-05-04',name: 'Tom',address: 'No. 189, Grove St, Los Angeles',},{date: '2016-05-01',name: 'Tom',address: 'No. 189, Grove St, Los Angeles',},
]
</script>

2. 展示

在这里插入图片描述

二、分页

上面已经展示了表格,当数据比较多的时候,就需要分页了。

1.国际化(中文)

代码如下(示例):

import ElementPlus from 'element-plus'
import ElementPlusLocaleZhCn from 'element-plus/dist/locale/zh-cn'const app = createApp(App)
app.use(ElementPlus, { size: 'small', zIndex: 3000 ,locale: ElementPlusLocaleZhCn})

2.分页代码

<el-paginationv-model:current-page="currentPage"v-model:page-size="pageSize":page-sizes="[10, 20, 50, 100]":small="small":disabled="disabled":background="background"layout="prev, pager, next,sizes,jumper,total":total="400"@size-change="handleSizeChange"@current-change="handleCurrentChange"/>
//分页数据
const currentPage = ref(1)
const pageSize=10
const small = ref(false)
const background = ref(false)
const disabled = ref(false)const handleSizeChange = (val: number) => {console.log(`${val} items per page`)
}
const handleCurrentChange = (val: number) => {console.log(`current page: ${val}`)
}

3. 展示

在这里插入图片描述

三、表单

这里展示查询表单的使用

1. 表单代码

<el-form :inline="true" :model="formInline" class="demo-form-inline"><el-form-item label="姓名"><el-select v-model="formInline.user" placeholder="请选择" clearable><el-option label="Tom" value="0" /><el-option label="Jerry" value="1" /></el-select></el-form-item><el-form-item label="地址"><el-input v-model="formInline.address" placeholder="请输入" clearable /></el-form-item><el-form-item label="日期"><el-date-picker v-model="formInline.date" type="date" placeholder="请选择日期" clearable /></el-form-item><el-form-item><el-button type="primary" @click="onSubmit">查询</el-button><el-button @click="onReset">重置</el-button></el-form-item></el-form>
import { ref, reactive } from 'vue'//搜索表单
const formInline = reactive({user: '',address: '',date: '',
})const onSubmit = () => {console.log('submit!')
}
const onReset = () => {console.log('reset!')
}

2. 展示

在这里插入图片描述

四、卡片

1. 卡片代码

<template><el-card style="max-width: 700px"  shadow="hover"><div class="demo-card"><span>用户信息</span><el-button  type="primary" @click="onSubmit">管理用户</el-button></div><div style="margin-top:10px;margin-bottom:10px"><hr></div><el-form :inline="true" :model="formInline" class="demo-form-inline"><el-form-item label="姓名"><el-select v-model="formInline.user" placeholder="请选择" clearable><el-option label="Tom" value="0" /><el-option label="Jerry" value="1" /></el-select></el-form-item><el-form-item label="地址"><el-input v-model="formInline.address" placeholder="请输入" clearable /></el-form-item><el-form-item label="日期"><el-date-picker v-model="formInline.date" type="date" placeholder="请选择日期" clearable /></el-form-item><el-form-item><el-button type="primary" @click="onSubmit">查询</el-button><el-button @click="onReset">重置</el-button></el-form-item></el-form><el-table :data="tableData" stripe style="width: 100%"><el-table-column prop="name" label="姓名" width="180" /><el-table-column prop="address" label="地址" /><el-table-column prop="date" label="日期" width="180" /></el-table><el-pagination v-model:current-page="currentPage" v-model:page-size="pageSize" :page-sizes="[10, 20, 50, 100]":small="small" :disabled="disabled" :background="background" layout="prev, pager, next,sizes,jumper,total":total="400" @size-change="handleSizeChange" @current-change="handleCurrentChange" /></el-card>
</template><script lang="ts" setup>
import { ref, reactive } from 'vue'//表格数据
const tableData = [{date: '2016-05-03',name: 'Tom',address: 'No. 189, Grove St, Los Angeles',},{date: '2016-05-02',name: 'Tom',address: 'No. 189, Grove St, Los Angeles',},{date: '2016-05-04',name: 'Tom',address: 'No. 189, Grove St, Los Angeles',},{date: '2016-05-01',name: 'Tom',address: 'No. 189, Grove St, Los Angeles',},
]
//分页数据
const currentPage = ref(1)
const pageSize = 10
const small = ref(false)
const background = ref(false)
const disabled = ref(false)const handleSizeChange = (val: number) => {console.log(`${val} items per page`)
}
const handleCurrentChange = (val: number) => {console.log(`current page: ${val}`)
}
//搜索表单
const formInline = reactive({user: '',address: '',date: '',
})const onSubmit = () => {console.log('submit!')
}
const onReset = () => {console.log('reset!')
}
</script>
<style scoped>
.demo-form-inline .el-input {--el-input-width: 220px;
}.demo-form-inline .el-select {--el-select-width: 220px;
}
.demo-card{display: flex;justify-content: space-between;
}
</style>

2. 展示

在这里插入图片描述


总结

回到顶部

相关文章:

  • 【考研数据结构——C语言描述】第四章 串
  • 基于51单片机的电子秤的设计
  • 公差基础-配合(互换性和测量基础)-2
  • 推荐系统算法
  • 网页五子棋对战项目测试(selenium+Junit5)
  • Python数据分析与建模库-02科学计算库Numpy01-05合集
  • Java高阶数据结构-----并查集(详解)
  • Matlab实现DBO-BiTCN-BiGRU-Attention蜣螂算法优化双向时间卷积双向门控循环单元融合注意力机制多变量回归预测
  • php收银系统源码推荐
  • tsp可视化python
  • C# 中的日志记录技术详细解析与示例
  • Android帧绘制流程深度解析 (一)
  • 筛斗数据:如何利用数据提取技术提高能源利用效率
  • 2024 年最新 Python 基于百度智能云实现短语音识别、语音合成详细教程
  • memcached介绍和详解
  • [ 一起学React系列 -- 8 ] React中的文件上传
  • Bootstrap JS插件Alert源码分析
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • KMP算法及优化
  • Node 版本管理
  • Spring核心 Bean的高级装配
  • vue从入门到进阶:计算属性computed与侦听器watch(三)
  • 开源SQL-on-Hadoop系统一览
  • 马上搞懂 GeoJSON
  • 前端路由实现-history
  • 前端相关框架总和
  • Hibernate主键生成策略及选择
  • mysql 慢查询分析工具:pt-query-digest 在mac 上的安装使用 ...
  • ​Python 3 新特性:类型注解
  • ​渐进式Web应用PWA的未来
  • #免费 苹果M系芯片Macbook电脑MacOS使用Bash脚本写入(读写)NTFS硬盘教程
  • $(function(){})与(function($){....})(jQuery)的区别
  • (2024,Flag-DiT,文本引导的多模态生成,SR,统一的标记化,RoPE、RMSNorm 和流匹配)Lumina-T2X
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (C11) 泛型表达式
  • (层次遍历)104. 二叉树的最大深度
  • (附源码)ssm考生评分系统 毕业设计 071114
  • (三)模仿学习-Action数据的模仿
  • (十)T检验-第一部分
  • (十八)SpringBoot之发送QQ邮件
  • (十三)Flink SQL
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • (杂交版)植物大战僵尸
  • (转)scrum常见工具列表
  • .L0CK3D来袭:如何保护您的数据免受致命攻击
  • .libPaths()设置包加载目录
  • .net 8 发布了,试下微软最近强推的MAUI
  • .NET CLR Hosting 简介
  • .net core webapi Startup 注入ConfigurePrimaryHttpMessageHandler
  • .NET Core、DNX、DNU、DNVM、MVC6学习资料
  • .Net Core中Quartz的使用方法
  • .Net Framework 4.x 程序到底运行在哪个 CLR 版本之上
  • .NET Framework杂记
  • .NetCore Flurl.Http 升级到4.0后 https 无法建立SSL连接
  • .net和jar包windows服务部署