JavaWeb——Vue组件库Element(5/6):案例:组件实现(概述、Form表单、Table表格、Pagination 分页、效果展示、完整代码)

目录

概述

Form表单

Table表格 

Pagination 分页

效果展示

完整代码


概述

在刚才制作出来的页面当中,上面项目的名称已制作好,左侧的菜单栏也已配置好。

接下来主要处理的是右侧主展示区域当中的组件编写。

在右侧的主展示区域,主要有 3 个组件。上方有一个表单组件,这个表单用来收集用户输入的查询条件。中间一块是一个表格,表格的下面是有一个分页条。 

所以接下来,我们需要在表格的上面增加一个 Form 表单,在表格的下面增加一个分页条。而这个表单是在一行当中展示的。接下来,我们就参照 Element 所提供的组件进行改造。 

Form表单

先打开 VS Code,看一下表单应放在哪个位置。

主展示区域是这个 el-main,这里已有一个 el-table 表格。刚才提到,在表格的上方应该有一个表单,所以应在这个表格的上方增加一个 Form 表单。我们打开 Element 的官网,找到表单的源代码拿来改造。

之前提到过,行内表单是指将表单项放在一行当中展示,这正是我们需要的。此时直接点击显示代码,将里面的代码用 Ctrl+C 复制,在相应位置 Ctrl+V 粘贴过来,对格式稍微做规整即可。

复制过来的这个表单当中只有两个表单项和一个查询按钮,表单中的表单项数据绑定到一个数据模型叫做 formInline 当中,这个名字可读性不强,我们改造为 searchForm,所有表单项都绑定到 searchForm 这个对象当中。

上面通过 v-model 绑定了数据模型,这个数据模型必须在下面声明,它是一个对象,里面两个属性,一个是 name,一个是 gender。所以在下面,在数据模型当中定义这个对象,对象使用大括号,一个是 name 代表姓名,一个是 gender 代表性别。这样数据模型就定义好了。 

然后再往上看,下面点击查询时会触发一个方法 onSubmit,接下来在下面定义一个 view 当中的方法 methods,在 methods 当中定义一个方法 onSubmit,点击提交时会触发这个方法,在这个方法中可以直接 alert 一个提示信息,代表要查询数据了。Form 表单的基本结构就准备好了。

接下来打开浏览器看效果,有两个表单项,一个姓名一个性别,性别是下拉框,有男有女。

接下来,表单中除了姓名性别,还有一个入职日期。这个表单项是入职日期,其体现形式不是输入框,而是日期选择器,这里不能再使用简单的 el-form,需要使用日期选择器。

还要绑定属性值:

这样,上面的表单就完善好了

Table表格 

中间的表格部分,我们之前已制作好,可以再为表格加上一个边框,使其看起来更好看,在Table当中增加一个属性 border 即可。

Pagination 分页

接下来,在表格的下面增加一个分页条,在这个位置增加一个分页条,分页条之前用到过,可以直接将之前制作的分页条的内容用 Ctrl+C、Ctrl+V 复制过来,

里面还有两个方法需要复制过来,一个是 handleSizeChange,一个是 handleCurrentChange,直接复制过来,在最下面粘贴即可。

效果展示

接下来再次打开浏览器,会看到上面的表单、中间的表格以及下面的分页条已经展示出来。

表格和分页条之间比较拥挤,可以在中间加上一个简单的换行解决这个问题。

由于当前表格中没有数据,所以会展示在一起,等将数据动态加载返回后,就不会存在这个问题了。这就是第二步操作,完成各个部分的组件实现。

完整代码

项目内部文件:EmpView.vue

<template><div><el-container style="height: 700px; border: 1px solid #eee"><el-header style="font-size: 40px; background-color: rgb(238, 241, 246)">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;tlias 智能学习辅助系统</el-header><el-container><el-aside width="200px"><el-menu :default-openeds="['1', '3']"><el-submenu index="1" style="background-color: rgb(215, 215, 215)"><template slot="title"><i class="el-icon-message"></i>系统信息管理 &nbsp;&nbsp; >></template><el-menu-item index="1-1">部门管理</el-menu-item><el-menu-item index="1-2">员工管理</el-menu-item></el-submenu></el-menu></el-aside><el-main><!-- 表单 --><el-form :inline="true" :model="searchForm" class="demo-form-inline"><el-form-item label="姓名"><el-input v-model="searchForm.name" placeholder="姓名"></el-input></el-form-item><el-form-item label="性别"><el-select v-model="searchForm.gender" placeholder="性别"><el-option label="男" value="1"></el-option><el-option label="女" value="2"></el-option></el-select></el-form-item><el-form-item><el-button type="primary" @click="onSubmit">查询</el-button></el-form-item><el-form-item label="入职日期"><el-date-pickerv-model="searchForm.entryDate"type="daterange"range-separator="至"start-placeholder="开始日期"end-placeholder="结束日期"></el-date-picker></el-form-item></el-form><!-- 表格 --><el-table :data="tableData" border><el-table-column prop="name" label="姓名" width="180"></el-table-column><el-table-column prop="image" label="图像" width="180"></el-table-column><el-table-column prop="gender" label="性别" width="140"></el-table-column><el-table-column prop="job" label="职位" width="140"></el-table-column><el-table-column prop="entryDate" label="入职日期" width="180"></el-table-column><el-table-column prop="updateTime" label="最后操作时间" width="230"></el-table-column><el-table-column label="操作"><el-button type="primary" size="mini">编辑</el-button><el-button type="danger" size="mini">删除</el-button></el-table-column></el-table><br /><!-- 分页条 --><el-paginationbackgroundlayout="total,sizes,prev, pager, next,jumper"@size-change="handleSizeChange"@current-change="handleCurrentChange":total="1000"></el-pagination></el-main></el-container></el-container></div>
</template><script>
export default {data() {return {tableData: [],searchForm: {name: "",gender: "",entryDate: [],},};},methods: {onSubmit: function () {alert("查询数据");},handleSizeChange(val) {console.log(`每页 ${val} 条`);},handleCurrentChange(val) {console.log(`当前页: ${val}`);},},
};
</script><style>
</style>

END 


学习自:黑马程序员——JavaWeb课程 

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java版鸿鹄电子招投标系统功能架构设计 核心功能设计 鸿鹄电子招投标采购系统源码

java版鸿鹄电子招投标系统功能架构设计 核心功能设计 鸿鹄电子招投标采购系统源码

数据结构--绪论

1.数据结构的基本概念 1.1数据结构基本概念以及术语 &#xff08;1&#xff09;数据结构是相互之间存在一种或多种特定关系的数据元素的集合。 &#xff08;2&#xff09;数据对象是具有相同性质的数据元素的集合&#xff0c;是数据的一个子集。 &#xff08;3&#xff09;数…

sql server每天定时执行sql语句

sql server每天定时执行sql语句 1、打开SQL Server Management Studio 2、鼠标右击【SQL Server 代理】&#xff0c;选择【启动(S)】&#xff0c;如已启动&#xff0c;可以省略此步骤&#xff1b; 3、右键&#xff0c;新建-》作业&#xff0c;在作业上-》新建作业&#xff…

《RabbitMQ篇》基本概念介绍

MQ功能 解耦 MQ允许不同系统或组件之间松散耦合。发送者和接收者不需要直接连接&#xff0c;从而提高了系统的灵活性和可维护性。异步处理 使用MQ可以实现异步消息传递&#xff0c;发送者可以将消息放入队列后立即返回&#xff0c;不必等待接收者处理。这提高了系统的响应速度…

【STM32单片机_(HAL库)】4-5-1【定时器TIM】【感应开关盖垃圾桶】SG90舵机模块实验

1.硬件 STM32单片机最小系统SG90舵机模块 2.软件 sg90驱动文件添加main.c程序 #include "sys.h" #include "delay.h" #include "led.h" #include "sg90.h"int main(void) {HAL_Init(); /* 初始化HAL库 */…

Linux命令大全及小例子

撰写一份关于Linux命令大全的详尽报道和分析是一项重要的任务&#xff0c;旨在让读者全面了解Linux命令的用途和应用场景。Linux系统因其强大的命令行工具而闻名&#xff0c;无论是系统管理、文件操作还是网络配置&#xff0c;Linux命令行都提供了灵活且强大的解决方案。以下是…

QT学习笔记2.2(安装部署_编译器)

QT学习笔记2.2&#xff08;安装部署_编译器) 编译器的版本&#xff0c;32位64位的 目前只用32位vs编译过&#xff0c;其他的还没有搞过。 一直没有搞清楚qt qtcreator 生成软件&#xff0c;32位和64位之间的关系 目前只使用32位qt生成打包了32位的项目。 编译器的安装 …

SAP HCM 抓取模拟工资核算日志RT表数据

一&#xff1a;故事背景 SAP的核算其实比较麻烦的就是没地方可以导出核算成功的人员编号&#xff0c;即使能导出也是树形的结构&#xff0c;需要反复加工多次才能整理好员工&#xff0c;所以非常麻烦&#xff0c;今天就想能不能抓取模拟工资的rt表数据. 二&#xff1a;解决办法…

ASP.NET Zero 多租户介绍

ASP.NET Zero 是一个基于 ASP.NET Core 的应用程序框架&#xff0c;它提供了多租户支持&#xff0c;以下是关于 ASP.NET Zero 多租户的介绍&#xff1a; 一、多租户概念 多租户是一种软件架构模式&#xff0c;允许多个客户&#xff08;租户&#xff09;共享同一套软件应用程序…

Unity 代码裁剪(Strip Engine Code)

文章目录 0.IL2CPP 打包运行闪退问题1.什么是代码裁剪2.为什么要使用代码裁剪3.代码裁剪设置与级别4.强制保留代码4.1 使用[Preserve]标签4.2 使用Link.xml文件 5.Strip中遇到的问题及解决方法6.注意事项 0.IL2CPP 打包运行闪退问题 Google Play要求从2019年8月1日起apk必须支…

2、项目配置设计(上)

文章目录 前言一、配置文件功能需求二、web工程设计思路三、Config实现思路 前言 配置文件作用&#xff1a;把需要经常修改的参数&#xff0c;从代码中分离出来,单独管理&#xff0c;方便后期维护。 开发一个web应用&#xff0c;肯定需要一些基础性的配置信息&#xff0c;这些信…

话术挂断之后是否处理事件

文章目录 前言联系我们解决方案方案一方案二 前言 流程&#xff1a;自动外呼进入机器人话术。问题&#xff1a;在机器人放音时用户挂断后&#xff0c;话术还会继续匹配流程&#xff0c;如果匹配上的是放音节点&#xff0c;还会进行放音&#xff0c;那么在数据库表conversation…

android Activity生命周期

android 中一个 activity 在其生命周期中会经历多种状态。 您可以使用一系列回调来处理状态之间的转换。下面我们来介绍这些回调。 onCreate&#xff08;创建阶段&#xff09; 初始化组件&#xff1a;在这个阶段&#xff0c;Activity的主要工作是进行初始化操作。这包括为Ac…

wsl中安装ubuntu,vscode访问这个ubuntu

WSL1升级为WSL2 wsl --set-default-version 2 wsl --set-version Ubuntu-22.04 2在windows商店中也可以安装ubuntu&#xff0c;在这个ubuntu中windows的c盘在/mnt/c中

【AIGC】2020-NIPS-去噪扩散概率模型

2020-NIPS-Denoising Diffusion Probabilistic Models 去噪扩散概率模型摘要1. 引言2. 背景3. 扩散模型和去噪自动编码器3.1 正向过程和 L T L_{T} LT​3.2 逆过程与 L 1 : T − 1 L_{1:T-1} L1:T−1​3.3 数据缩放、逆过程解码器和 L 0 L_{0} L0​3.4 简化的训练目标 4. 实…

强大的JVM监控工具

介绍 在生产环境中&#xff0c;经常会遇到各种各样奇葩的性能问题&#xff0c;所以掌握最基本的JVM命令行监控工具还是很有必要的 名称主要作用jps查看正在运行的Java进程jstack打印线程快照jmap导出堆内存映像文件jstat查看jvm统计信息jinfo实时查看和修改jvm配置参数jhat用…

Java 每日一刊(第20期):I/O 流

文章目录 前言流的起源及概念Java I/O 流概述字节流字符流转换流缓冲流对象流与序列化NIO&#xff08;New I/O&#xff09;流的关闭与资源管理本期小知识 前言 这里是分享 Java 相关内容的专刊&#xff0c;每日一更。 本期将为大家带来以下内容&#xff1a; 流的起源及概念J…

Leetcode: 0041-0050题速览

Leetcode: 0041-0050题速览 本文材料来自于LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer&#xff08;第 2 版&#xff09;》、《程序员面试金典&#xff08;第 6 版&#xff09;》题解 遵从开源协议为知识共享 版权归属-相同方式…

C++ | Leetcode C++题解之第447题回旋镖的数量

题目&#xff1a; 题解&#xff1a; class Solution { public:int numberOfBoomerangs(vector<vector<int>> &points) {int ans 0;for (auto &p : points) {unordered_map<int, int> cnt;for (auto &q : points) {int dis (p[0] - q[0]) * (p…

【Node.js】内置模块FileSystem的保姆级入门讲解

作者&#xff1a;CSDN-PleaSure乐事 欢迎大家阅读我的博客 希望大家喜欢 使用环境&#xff1a;Vscode 本文代码都经由博主PleaSure乐事实操后得出&#xff0c;可以放心使用。 1.FileSystem介绍 Node.js 的 fs&#xff08;filesystem&#xff09;模块是一个核心模块&#xff0c…