封装带插槽的表格

子组件

<template><div><table><thead><tr><th v-for="col,colIndex in columns" :key="colIndex">{{ col.title }}</th></tr></thead><tbody v-if="instList.length >0"><tr v-for="(row,rowIndex) in instList" :key="row.id" @click="onClick(row)"><td v-for="col,colIndex in columns" :key="colIndex"><template v-if="'slot' in col"><slot :row="row" :column="col" :index="rowIndex" :name="col.slot" /></template><template v-else>{{ row[col.key] }}</template></td></tr></tbody><tbody v-else><tr><td colspan="7">暂无数据</td></tr></tbody></table></div>
</template>
<script>
export default {props: {columns: {type: Array,default: () => { [] }},instList: {type: Array,default: () => { [] }}},methods: {onClick(row) {this.$emit('onClick', row)}}
}
</script>
<style lang="scss" scoped>table{width: 100%;border-collapse: collapse;border-spacing: 0;empty-cells: show;border: 1px solid #e9e9e9;}table th{background: #f7f7f7;color: #5c6b77;font-weight: 600;white-space: nowrap;}table td, table th{color: #666;padding: 8px 16px;border: 1px solid #e9e9e9;text-align: left;}
</style>

父组件

    <project-table :columns="columns" :inst-list="instList" @onClick="onClick"><template #zhuangtai="{ row, index }"><div class="text-center"><div class="circle" :class="row.yan_qi_zhuang_tai_==1?'error':row.yan_qi_zhuang_tai_==2?'success':row.yan_qi_zhuang_tai_==3?'warning':''" /></div></template></project-table>
import ProjectTable from './table'data() {return {instList: [{ xiang_mu_id_: '项目名称1',xiang_mu_jin_du_: '50%',rl_cheng_ben_bi_: '10000',yan_qi_zhuang_tai_: 1},{ xiang_mu_id_: '项目名称2',xiang_mu_jin_du_: '50%',rl_cheng_ben_bi_: '10000',yan_qi_zhuang_tai_: 2},{ xiang_mu_id_: '项目名称3',xiang_mu_jin_du_: '50%',rl_cheng_ben_bi_: '10000',yan_qi_zhuang_tai_: 3}],columns: [{ title: '项目名称', key: 'xiang_mu_id_' },{ title: '项目进度', key: 'xiang_mu_jin_du_' },{ title: '人力成本', key: 'rl_cheng_ben_bi_' },{ title: '延期状态', key: 'yan_qi_zhuang_tai_', slot: 'zhuangtai' }],}
}
methods: {onClick(row) {console.log('row-------', row)this.title = row.xiang_mu_id_this.showPopup = true},
}.circle{width: 20px;height: 20px;border-radius: 50%;&.error{background-color: #f23d01;}&.success{background-color: rgb(93, 247, 69);}&.warning{background-color: rgb(246, 236, 45);}
}

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

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

相关文章

Altair 电子可靠性解决方案

原文链接&#xff1a;Altair 电子可靠性解决方案

fpga rom 初始化文件的一些心得

目录 可能遇到的问题 问题 解决方案 rom的初始化 用途 文件类型 如何生成初始化文件 示例 Altera Xilinx 可能遇到的问题 问题 altera FPGA的rom找不到初始化文件&#xff0c;编译过程会提示类似的问题 Error(127001): Cant find Memory Initialization File or He…

运行游戏找不到x3daudio1_7.dll怎么解决?教你如何快速修复的教程

在计算机使用过程中&#xff0c;我们经常会遇到一些错误提示&#xff0c;其中之一就是“x3daudio1_7.dll丢失”。这个错误提示可能让我们感到困惑和烦恼&#xff0c;但是不用担心&#xff0c;本文将为您介绍x3daudio1_7.dll丢失的原因以及五种修复方法&#xff0c;帮助您解决这…

Nginx(缓存机制)

对于性能优化而言&#xff0c;缓存是一种能够大幅度提升性能的方案&#xff0c;因此几乎可以在各处都能看见缓存&#xff0c;如客户端缓存、代理缓存、服务器缓存等等&#xff0c;Nginx的缓存则属于代理缓存的一种。对于整个系统而言&#xff0c;加入缓存带来的优势额外明显&am…

【3】基于多设计模式下的同步异步日志系统-设计模式

详细介绍设计模式 单例模式 ⼀个类只能创建⼀个对象&#xff0c;即单例模式&#xff0c;该设计模式可以保证系统中该类只有⼀个实例&#xff0c;并提供⼀个访问它的全局访问点&#xff0c;该实例被所有程序模块共享。⽐如在某个服务器程序中&#xff0c;该服务器的配置信息存放…

Redis Desktop Manager for Mac:高效管理Redis数据的必备工具

Redis是一种快速、可扩展的内存数据库&#xff0c;被广泛应用于缓存、消息队列和实时分析等领域。而Redis Desktop Manager for Mac作为一款专为Mac用户设计的Redis桌面管理工具&#xff0c;为用户提供了高效便捷的方式来管理和操作Redis数据。 首先&#xff0c;Redis Desktop…

【已解决】xxljob连接报错HTTP 302(HTTP 401账号或密码错误)

目录 问题现象&#xff1a; 问题分析&#xff1a; 1、密码中的特殊字符。 2、密码长度问题。 解决方法&#xff1a; 拓展&#xff1a; 问题现象&#xff1a; 今天在生产环境使用xxljob任务调度来创建并执行任务时&#xff0c;出现了程序报错&#xff1a; 通过查询xxljob日志…

降本增笑?滴滴史上最严重服务故障,裁员真不能裁测试

2023 年 11 月 27 日晚间&#xff0c;滴滴因系统故障导致 App 服务异常&#xff0c;不显示定位且无法打车。11 月 27 日晚&#xff0c;滴滴出行进行了回复&#xff1a;非常抱歉&#xff0c;由于系统故障。 2023 年 11 月 28 日早间&#xff0c;滴滴出行消息称&#xff0c;网约…

Spring AOP 概念及其使用

目录 AOP概述 什么是AOP&#xff1f; 什么是Spring AOP ? Spring AOP 快速入门 1.引⼊ AOP 依赖 2.编写AOP程序 Spring AOP 核心概念 1.切点 2.连接点 3.通知 4.切面 通知类型 注意事项: PointCut&#xff08;定义切点&#xff09; 切面优先级 Order 切点表达…

Java中的Future源码讲解

JAVA Future源码解析 文章目录 JAVA Future源码解析前言一、传统异步实现的弊端二、what is Future ?2.1 Future的基本概念2.2Future 接口方法解析2.2.1 取消任务执行cancel2.2.2 检索任务是否被取消 isCancelled2.2.3 检索任务是否完成 isDone2.2.3 检索任务计算结果 get 三、…

Windows server 2019 域环境部署

环境准备 准备3台服务器&#xff0c;配置都是8g2核&#xff0c;50g硬盘&#xff0c;操作系统版本Windows Server 2019 Datacenter 域服务器&#xff1a;adc&#xff0c;192.168.56.120服务器1&#xff1a;server1:&#xff0c;192.168.56.121服务器2&#xff1a;server2&…

新媒体营销教学模拟实训平台解决方案

一、背景与目标 随着新媒体的快速发展&#xff0c;营销人才需求旺盛&#xff0c;而具备新媒体营销能力的人才供给却相对不足。为了解决这一矛盾&#xff0c;本方案旨在构建一个新媒体营销教学模拟实训平台&#xff0c;帮助学生掌握新媒体营销的实际操作技能&#xff0c;提高就…

Python 3 使用 write()、writelines() 函数写入文件

1 使用 write() 函数&#xff0c;将字符串&#xff08;或字节串&#xff0c;仅适用写入二进制文件中&#xff09;写入文件中。 with open(example.txt,w,encodingutf-8) as f:f.write(春夜喜雨\n)f.write(杜甫 [唐代]\n)f.write(好雨知时节&#xff0c;当春乃发生。\n)f.write(…

windows彻底卸载VMware虚拟机

右键停止这些服务 在任务管理器中也结束vmware 在控制面板中卸载 找到注册表 然后在【software】目录下找到【VMware&#xff0c;Inc】&#xff0c;然后选中右键删除&#xff1b; 确保C盘中也没了

关于工业级交换机的分类,你知道多少?

工业级交换机是指专为工业控制领域设计的以太网交换设备。工业级交换机具备电信级的性能特征&#xff0c;能够在恶劣的工作环境下持久耐用。我们的产品系列非常广泛&#xff0c;可以灵活配置各种不同类型的端口&#xff0c;以满足工业领域的多样化使用需求。该产品具有宽温设计…

Oracle ADRCI工具使用说明

1.ADRCI介绍 ADRCI是一个命令行工具&#xff0c;是Oracle 11g中引入的故障可诊断性架构的一部分。 ADRCI可以完成以下&#xff1a; 查看自动诊断信息库&#xff08;ADR&#xff09;中的诊断数据。 查看Health Monitor报告。 将事件和问题信息打包到zip文件中以传输到Oracle Su…

2023年文章生成器推荐

2023年即将结束&#xff0c;今年可以说是大语言模型独领风骚的一年&#xff0c;对于内容创作来说&#xff0c;文章生成类的工具也发生了变化。今天给大伙介绍一些超赞的免费文章生成器&#xff0c;让你在内容创作的路上事半功倍。有了这些神奇的工具&#xff0c;你将能够轻松应…

如何使用内网穿透工具实现公网访问GeoServe Web管理界面

文章目录 前言1.安装GeoServer2. windows 安装 cpolar3. 创建公网访问地址4. 公网访问Geo Servcer服务5. 固定公网HTTP地址6. 结语 前言 GeoServer是OGC Web服务器规范的J2EE实现&#xff0c;利用GeoServer可以方便地发布地图数据&#xff0c;允许用户对要素数据进行更新、删除…

深搜DFS 洛谷 P1706 全排列问题

深度优先搜索DFS&#xff08;第一讲&#xff09;&#xff1a;全排列问题

多波束EM2040D甲板单元更换CPU主板记录

前段时间多波束EM2040D甲板单元的CPU主板到货了。趁着船刚好靠港避风&#xff0c;我们带着这块主板去替换之前借来EM2040C的CPU主板。 1、CF卡替换问题 老主板有个CF卡&#xff0c;见下图。最好的解决方法就是将老CF卡替换新CPU主板上的新CF卡&#xff0c;因为这样改动最小。…