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

基于element ui封装table组件

效果图:

1.封装表格代码如下

<template>
<div><div class="TableList"><el-tablev-loading="loading"@selection-change="selectionChange"class="table":data="tableData":border="hasBorder":row-class-name="tableRowClassName"ref="multipleTable":header-cell-style="{background: 'rgb(245 247 250)',color: 'rgb(51, 51, 51)',}"><el-table-column type="selection" width="50" v-if="selectionShow"> </el-table-column><!-- 序号 --><el-table-column v-if="hasIndex" type="index" label="序号" header-align="center" align="center" width="80"> </el-table-column><!-- 其他 --><template v-for="item in tableColumnOptions"><!-- 插槽列 --><el-table-columnv-if="item.columnType":key="item.label":prop="item.prop":label="item.label":width="item.width":header-align="item.headerAlign || 'center'":align="item.align || 'center'"><template slot-scope="{ row }"><slot :name="item.soltName" :data="row"></slot></template></el-table-column><!-- 非插槽列 --><el-table-columnv-else:key="item.label":prop="item.prop":label="item.label":width="item.width":header-align="item.headerAlign || 'center'":align="item.align || 'center'"><!--          表头的特殊处理(eg:表头上加提示或图标等)--><template slot="header" v-if="item.showIcon"><div class="tab-header">{{ item.label }}<el-tooltip :content="item.content" placement="top"><i  class="el-icon-warning-outline icon"></i></el-tooltip></div></template></el-table-column></template><el-table-column type="selection" width="50" v-if="selectionShow1" :selectable="checkboxT"> </el-table-column></el-table></div>
</div>
</template>
<script>
export default {props:{// 表格数据tableData: {type: Array,default() {return [];},},// 表格列项tableColumnOptions: {type: Array,require: true,default() {return [];},},// 是否具有索引hasIndex: {type: Boolean,default() {return true;},},// 是否显示边框hasBorder: {type: Boolean,default() {return false;},},// 是否显示选择框selectionShow: {type: Boolean,default() {return true;},},//加载loading: {type: Boolean,default: false,},},methods:{// 选择框改变selectionChange(e){this.$emit('selectionChange',e)},tableRowClassName({ row, rowIndex }) {},}
}
</script>
<style scoped lang="scss"></style>

2.在页面上使用

<template>
<div><tableList:selection-show="true":loading="loading":has-index="false":has-border="true":table-data="tableData":table-column-options="tableColumnOptions"@selectionChange="selectionChange"><!-- 类型插槽 --><template #tag="{ data }"><div class="tag"><el-tag type="success" v-if="data.type === 1">tag1</el-tag><el-tag type="danger" v-if="data.type === 0">tag2</el-tag></div></template><!-- 操作插槽 --><template #operation="{ data }"><el-button type="text" @click="handleEdit(data)">编辑</el-button><el-button type="text" @click="handleDelete(data)" id="delete">删除</el-button></template></tableList>
</div>
</template>
<script>
import tableList from '@/views/daily-examine/components/table/index.vue';
export default {components:{tableList},data(){return {loading:false,tableData:[{ id: 202391074073, name: "张三", type: 1,special:'1'},{ id: 202391074071, name: "李四", type: 0,special:'1'},{ id: 202391074074, name: "王二", type: 0,special:'1'},{ id: 202391074074, name: "马六", type: 0,special:'1'},{ id: 202391074074, name: "李六", type: 1,special:'1'},],tableColumnOptions:[{ label: "账号", prop: "id" },{ label: "姓名", prop: "name" },{ label: "tag", prop: "type", columnType: true, soltName: "tag" },{ label: "表头特殊处理",prop:'special',showIcon:true, content:'提示,提示,提示', },{ label: "操作", width: "300", columnType: true, soltName: "operation"},],}},methods:{selectionChange(){},//编辑handleEdit(data){},//删除handleDelete(data){},}
}
</script>
<style scoped lang="scss"></style>

以上就是基于element ui封装table组件

相关文章:

基于element ui封装table组件

效果图&#xff1a; 1.封装表格代码如下 <template> <div><div class"TableList"><el-tablev-loading"loading"selection-change"selectionChange"class"table":data"tableData":border"hasBorde…...

MySQL进阶之(一)逻辑架构

一、逻辑架构 1.1 逻辑架构剖析1.1.1 连接层1.1.2 服务层01、基础服务组件02、SQL Interface&#xff1a;SQL 接口03、Parser&#xff1a;解析器04、Optimizer&#xff1a;查询优化器05、Caches & Buffers&#xff1a; 查询缓存组件 1.1.3 引擎层1.1.4 存储层1.1.5 总结 1.…...

【前端学习指南】开启 Vue 的学习之旅

&#x1f36d; Hello&#xff0c;我是爱吃糖的范同学 秋招终于结束了&#xff08;拿到了比较满意的 offer&#x1f389;&#x1f389;&#x1f389;&#xff0c;后续也会有“面筋”系类给大家分享&#xff09;&#xff0c;目前我终于也有足够的时间和精力来完成我 23 年遗留下…...

编程笔记 html5cssjs 011 HTML页面划分

编程笔记 html5&css&js 011 HTML页面划分 HTML的框架、区块和布局是什么&#xff0c;它们之前的关系是怎样的&#xff1f;框架注意 接下来要看一下网页内的划分。通过框架、区块及布局等方式&#xff0c;将网页从一个长方形整体划分为若干个部分&#xff0c;以合理展示…...

Centos7:Jenkins+gitlab+node项目启动(2)

Centos7&#xff1a;Jenkinsgitlabnode项目启动(1) Centos7&#xff1a;Jenkinsgitlabnode项目启动(1)-CSDN博客 Centos7&#xff1a;Jenkinsgitlabnode项目启动(2) Centos7&#xff1a;Jenkinsgitlabnode项目启动(2)-CSDN博客 Centos7&#xff1a;Jenkinsgitlabnode项目启…...

Qt+Opencv:人脸检测

话接上一篇&#xff0c;我们仍使用在上篇《QtOpencv&#xff1a;Qt中部署opencv》创建的Qt项目来测试opencv提供的sample。 在正式开始本篇之前&#xff0c;我们先说做一下准备工作&#xff1a; 一、opencv官方文档 学习最权威和最可靠的方式&#xff0c;就是阅读官方文档和…...

ChatGPT在地学、GIS、气象、农业、生态、环境等领域中的高级应用

以ChatGPT、LLaMA、Gemini、DALLE、Midjourney、Stable Diffusion、星火大模型、文心一言、千问为代表AI大语言模型带来了新一波人工智能浪潮&#xff0c;可以面向科研选题、思维导图、数据清洗、统计分析、高级编程、代码调试、算法学习、论文检索、写作、翻译、润色、文献辅助…...

Unreal Engine游戏引擎的优势

在现在这个繁荣的游戏开发行业中&#xff0c;选择合适的游戏引擎是非常重要的。其中&#xff0c;Unreal Engine作为一款功能强大的游戏引擎&#xff0c;在业界广受赞誉。那Unreal Engine游戏引擎究竟有哪些优势&#xff0c;带大家简单的了解一下。 图形渲染技术 Unreal Engin…...

[OCR]Python 3 下的文字识别CnOCR

目录 1 CnOCR 2 安装 3 实践 1 CnOCR CnOCR 是 Python 3 下的文字识别&#xff08;Optical Character Recognition&#xff0c;简称OCR&#xff09;工具包。 工具包支持简体中文、繁体中文&#xff08;部分模型&#xff09;、英文和数字的常见字符识别&#xff0c;支持竖…...

字符串序列判定(100%用例)C卷 (JavaPythonNode.jsC语言C++)

输入两个字符串 S 和 L ,都只包含英文小写字母。 S 长度 <=100 , L 长度 <=500,000 。判定 S 是否是 L 的有效字串。 判定规则: S 中的每个字符在 L 中都能找到(可以不连续),且 S 在L中字符的前后顺序与 S 中顺序要保持一致。(例如, S="ace" 是 L=&q…...

ERROR: No matching distribution found for torch==2.0.1解决方案

大家好&#xff0c;我是水滴~~ 本文主要介绍在安装 stable-diffusion-webui 时出现的 ERROR: No matching distribution found for torch2.0.1 问题的解决方案&#xff0c;希望能对你有所帮助。 《Python入门核心技术》专栏总目录・点这里 文章目录 问题描述解决方案离线安装 …...

ClickHouse基础知识(五):ClickHouse的SQL 操作

基本上来说传统关系型数据库&#xff08;以 MySQL 为例&#xff09;的 SQL 语句&#xff0c;ClickHouse 基本都支持&#xff0c; 这里不会从头讲解 SQL 语法只介绍 ClickHouse 与标准 SQL&#xff08;MySQL&#xff09;不一致的地方。 1. Insert 基本与标准 SQL&#xff08;My…...

【Python基础】字符串

文章目录 [toc]什么是字符串索引示例索引越界 切片语法示例 字符串方法find()方法rfind()方法count()方法replace()方法 个人主页&#xff1a;丷从心 系列专栏&#xff1a;Python基础 什么是字符串 如下定义的变量url存储的是字符串类型的值 url www.baidu.com print(url)u…...

Linux中proc文件系统相关介绍

proc虚拟文件系统的工作原理 linux 内核是一个非常庞大、非常复杂的一个单独的程序&#xff0c;对于这样一个程序来说调试是非常复杂的。像kernel这样庞大的项目&#xff0c;给里面添加或者修改一个功能是非常麻烦的&#xff0c;因为添加一个功能可能会影响其他已经有的功能。…...

深入理解 YOLOv8:解析.yaml 配置文件目标检测、实例分割、图像分类、姿态检测

目录 yolov8导航 YOLOv8&#xff08;附带各种任务详细说明链接&#xff09; 引言 YOLOv8配置文件概览 yolov8.yaml 1. nc 2. scales 3. backbone 4. head yolov8-seg.yaml 1. 参数部分 2. 骨架&#xff08;Backbone&#xff09;部分 3. 头部&#xff08;Head&…...

oracle与mysql的分析函数(窗口函数)

分析函数定义 在SQL语句中&#xff0c;很多查询语句需要进行GROUP BY分组汇总&#xff0c;但是一旦经过分组&#xff0c;SELECT返回的记录数就会减少。为了保留所有原始行记录&#xff0c;并且仍可以进行分组数据分析&#xff0c;分析函数应运而生。 Oracle 8i 版本开始支持窗…...

《微信小程序开发从入门到实战》学习六十五

6.4 交互API 6.4.5 页面滚动API 使用wx.pageScrollTo接口可使页面自动滚动到目标位置。该接口介绍Object参&#xff0c;该参支持属性如下所示&#xff1a; scrollTop&#xff1a;必填&#xff0c;滚动到页面的目标位置&#xff0c;单位为px duration&#xff1a;滚动动画的…...

开箱即用的企业级数据和业务管理中后台前端框架Ant Design Pro 5的开箱使用和偏好配置

Ant Design Pro 介绍 Ant Design Pro 是一个开箱即用的企业级前端解决方案&#xff0c;基于 Ant Design 设计体系&#xff0c;提供了丰富的组件和功能&#xff0c;帮助开发者更快速地开发和部署企业级应用。 Ant Design Pro 使用 React、umi 和 dva 这三个主要的前端开发技术…...

怎么用Facebook找客户?Facebook开发客户攻略分享

跨境人最了解的电商平台之一就是Facebook了&#xff0c;说到Facebook&#xff0c;它拥有超过20亿的活跃用户&#xff0c;所以你可以在这个平台上面找到更多的潜在客户。今天的文章就主要分享用Facebook开发客户的方法&#xff0c;全是干货&#xff0c;建议收藏&#xff01; 一、…...

【Vue2+3入门到实战】(12)自定义指令的基本语法(全局、局部注册)、 指令的值、v-loading的指令封装 详细示例

目录 一、学习目标1.自定义指令 二、自定义指令1.指令介绍2.自定义指令3.自定义指令语法4.指令中的配置项介绍5.代码示例6.总结 三、自定义指令-指令的值1.需求2.语法3.代码示例 四、自定义指令-v-loading指令的封装1.场景2.需求3.分析4.实现5.准备代码 六、自定义指令总结 一、…...

别再只仿真了!手把手教你用LabVIEW+USRP-2920搭建真实无线通信链路(BPSK/QPSK调制实战)

从仿真到实战&#xff1a;LabVIEW与USRP-2920构建无线通信链路的完整指南 在通信工程领域&#xff0c;仿真与硬件实现之间往往存在一道难以逾越的鸿沟。许多工程师能够熟练使用MATLAB或LabVIEW进行通信系统仿真&#xff0c;但当面对USRP-2920这样的射频硬件时&#xff0c;却常常…...

Python AOT编译卡在wasm-ld阶段?揭秘2026年新引入的WASI-SDK v22.0工具链冲突——附3行patch脚本+验证清单

第一章&#xff1a;Python AOT编译卡在wasm-ld阶段&#xff1f;揭秘2026年新引入的WASI-SDK v22.0工具链冲突——附3行patch脚本验证清单自2026年WASI-SDK v22.0发布以来&#xff0c;Python官方AOT编译流程&#xff08;基于pyodide-build aot&#xff09;在链接阶段频繁阻塞于w…...

开源工具Jellyfin豆瓣插件高效配置指南:打造完美中文媒体库

开源工具Jellyfin豆瓣插件高效配置指南&#xff1a;打造完美中文媒体库 【免费下载链接】jellyfin-plugin-douban Douban metadata provider for Jellyfin 项目地址: https://gitcode.com/gh_mirrors/je/jellyfin-plugin-douban 在数字媒体收藏日益增长的今天&#xff0…...

接近开关和光电开关接头:A编码M12一体式防水连接器规格解析

在工业自动化现场&#xff0c;接近开关与光电开关是应用最广泛的传感器。其标准接口——A编码M12一体式防水连接器&#xff08;预铸线缆型&#xff09;&#xff0c;通过统一的机械尺寸与电气定义&#xff0c;实现了传感器的即插即用与高可靠连接。一、规格标准与接口定义A编码M…...

AutoSAR实战:NVRAM Manager配置避坑指南(附完整代码示例)

AutoSAR实战&#xff1a;NVRAM Manager配置避坑指南&#xff08;附完整代码示例&#xff09; 在汽车电子开发领域&#xff0c;AutoSAR框架的NVRAM Manager&#xff08;NvM&#xff09;模块是管理非易失性数据的关键组件。许多工程师在初次配置时容易陷入性能陷阱和功能误区&…...

魔兽世界游戏插件开发从入门到实战:工具详解与效率提升指南

魔兽世界游戏插件开发从入门到实战&#xff1a;工具详解与效率提升指南 【免费下载链接】wow_api Documents of wow API -- 魔兽世界API资料以及宏工具 项目地址: https://gitcode.com/gh_mirrors/wo/wow_api 作为魔兽世界玩家&#xff0c;你是否曾想过通过自定义插件提…...

N诺机试题

2.整除&#xff08;末尾无空格用printf“ ”&#xff09;#include<stdio.h>int main(){int count0;for(int i100;i<1000;i){if(i%50&&i%60){printf("%d",i);count;if(count%100) printf("\n");else printf(" "); }}return 0;…...

MVC / MVVM 和 Vue3、React18 到底啥关系?

MVC / MVVM 和 Vue3、React18 到底啥关系&#xff1f; 我用最直白、最贴合你日常写代码的方式讲清楚&#xff0c;保证你瞬间通透。一、先给结论&#xff08;最重要&#xff09; Vue3 标准的 MVVM 框架&#xff08;官方自己定义的&#xff09;React18 借鉴 MVVM 思想&#xff…...

Open Props:重新定义CSS自定义属性的高效设计系统

Open Props&#xff1a;重新定义CSS自定义属性的高效设计系统 【免费下载链接】open-props CSS custom properties to help accelerate adaptive and consistent design. 项目地址: https://gitcode.com/gh_mirrors/op/open-props 在前端开发领域&#xff0c;样式一致性…...

Cesium1.95内存优化实战:从3D Tiles到GPU Instancing的完整避坑指南

Cesium1.95内存优化实战&#xff1a;从3D Tiles到GPU Instancing的完整避坑指南 在三维地理信息系统和智慧城市项目中&#xff0c;Cesium作为领先的WebGL框架&#xff0c;其性能表现直接决定了复杂场景的流畅度。当遇到大规模模型加载时&#xff0c;内存溢出成为开发者最头疼的…...