Element table表格组件常见业务场景之新增表格行、自定义单元格样式、单元格可编辑

本文介绍了使用Element UI在前端开发中处理表格的常见业务场景,包括1)如何实现表格行的动态添加,解决因新数据为空导致的行高问题;2)自定义单元格样式,通过条件判断为特定单元格添加红色边框;3)实现单元格可编辑功能,详细阐述了点击事件、DOM操作以及失去焦点时的样式处理。文章最后还提供了一份前端学习资源包供读者领取。

1、新增表格行

业务场景: 表格行可供用户自定义添加

<template>
 <el-table:data="tableData"style="width: 100%"border><!-- :row-style="rowStyle" --><el-table-columnprop="date"label="日期"width="180"></el-table-column><el-table-columnprop="name"label="姓名"width="120"></el-table-column><el-table-columnprop="address"label="地址"width="240"></el-table-column><el-table-columnprop="sex"label="性别"width="120"></el-table-column><el-table-columnprop="age"label="年龄"width="120"></el-table-column></el-table></template><script> export default {data() {return {tableData: [{date: "2016-05-02",name: "王小狗",address: "上海市普陀区金沙江路 1518 弄",sex: "女",age: null,},{date: "2016-05-04",name: "王小猫",address: "上海市普陀区金沙江路 1517 弄",sex: null,age: "29",},{date: "2016-05-01",name: "王小猪",address: "上海市普陀区金沙江路 1519 弄",sex: "女",age: "12",},{date: "2016-05-03",name: "王小虎",a
### 自定义单元格高度 可通过 CSS 样式来实现自定义单元格高度。在全局样式文件或者当前组件样式部分添加如下代码: ```css /* 设置表头单元格高度 */ .el-table__header th { height: 50px; /* 可根据需求修改高度值 */ } /* 设置表体单元格高度 */ .el-table__body td { height: 40px; /* 可根据需求修改高度值 */ } ``` 若要在特定的组件内生效,且使用了 `<style scoped>`,可以借助深度选择器来实现: ```css /* 使用 /deep/ 或 ::v-deep 或 :deep(),不同版本 Vue 支持情况不同 */ :deep(.el-table__header th) { height: 50px; /* 可根据需求修改高度值 */ } :deep(.el-table__body td) { height: 40px; /* 可根据需求修改高度值 */ } ``` ### 自定义单元格宽度 #### 1. 通过 `width` 属性 在 `el-table-column` 上直接设置 `width` 属性,例如: ```vue <template> <el-table :data="tableData"> <el-table-column prop="name" label="姓名" width="150"></el-table-column> <el-table-column prop="age" label="年龄" width="100"></el-table-column> </el-table> </template> <script setup> import { ref } from 'vue'; const tableData = ref([ { name: '张三', age: 20 }, { name: '李四', age: 22 } ]); </script> ``` #### 2. 通过 CSS 若要统一设置列宽度,可使用 CSS 选择器: ```css .el-table .el-table__body-wrapper .el-table__row td { width: 200px; /* 可根据需求修改宽度值 */ } ``` 若在 `<style scoped>` 中使用,需结合深度选择器: ```css :deep(.el-table .el-table__body-wrapper .el-table__row td) { width: 200px; /* 可根据需求修改宽度值 */ } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值