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

el-table 树形结构数据 设置某一层,新增按钮不展示

 

  <template><div><el-table:data="tableData":row-class-name="rowClassName":tree-props="{ children: 'children', hasChildren: 'hasChildren' }"><!-- 表格列定义 --><!-- ... --><el-table-column label="操作" width="100"><template slot-scope="scope"><el-buttonv-if="showAddButton(scope.row)"type="primary"size="small"@click="handleAdd(scope.row)">新增</el-button></template></el-table-column></el-table></div>
</template><script>
export default {data() {return {// 表格数据tableData: [],};},methods: {rowClassName({ row }) {// 自定义方法,根据行数据设置行的 CSS 类名if (this.getLevel(row) === 2) {// 判断行的层级是否为第三级(索引从 0 开始)return "disable-add-button-row"; // 返回自定义的 CSS 类名}return "";// 其他行不添加特定的 CSS 类名},getLevel(row) {// 获取行的层级let level = 0;let parent = this.tableData.find((item) => item.rowKey === row.parentKey);while (parent) {level++;parent = this.tableData.find((item) => item.rowKey === parent.parentKey);}return level;},showAddButton(row) {// 判断是否展示新增按钮return this.getLevel(row) !== 2;},handleAdd(row) {// 点击新增按钮的逻辑处理 // ...},},
};
</script><style scoped>
.disable-add-button-row .el-button {display: none; // 隐藏新增按钮
}
</style>

在修正后的代码中,我们添加了一个 getLevel 方法,通过递归查找当前行的父节点并计算层级。然后我们根据 getLevel(row) 的返回值来确定当前行的层级,并根据层级判断是否显示新增按钮。

请将示例代码中的 :data 属性以及其他相关部分根据您的实际需求进行调整,确保适配您的数据结构和表格列定义。同时,需要在样式部分的 <style> 标签中设置 .disable-add-button-row .el-button 类的样式,以隐藏新增按钮。

http://www.lryc.cn/news/103234.html

相关文章:

  • 【Unity2D】粒子特效
  • 第九十六回 网络综合示例:获取天气信息
  • Shell中获取昨天和多天前日期
  • golang静态编译及编译失败排查步骤
  • 2023年7月第4周大模型荟萃
  • Meta分析的选题与文献计量分析CiteSpace应用丨R语言Meta分析【数据清洗、精美作图、回归分析、诊断分析、不确定性及贝叶斯应用】
  • vscode eslint配置
  • C++ 对象模型 C++ Object Model
  • leetcode做题笔记47
  • Linux Day04
  • 上海亚商投顾:沪指冲高回落 两市成交重回万亿
  • 2023最新版本~十分钟零基础搭建EMQX服务器
  • SpringBoot2.5.6整合Elasticsearch7.12.1
  • 准大一信息安全/网络空间安全专业学习规划
  • WEB:php_rce
  • 问题:idea启动项目错误提示【command line is too long. shorten command line】
  • xshell连接Windows中通过wsl安装的linux子系统-Ubuntu 22.04
  • 子域名收集工具OneForAll的安装与使用-Win
  • 报数游戏、
  • 规约模式:优雅设计与灵活应用
  • Ubuntu Server版 之 apache系列 安装、重启、开启,版本查看
  • Redis学习路线(4)—— Redis实现项目缓存
  • 【Unity造轮子】实现一个类csgo的武器轮盘功能
  • 代码随想录算法训练营第三十天 | 单调栈系列复习
  • redis数据未到过期时间被删除
  • 32.选择器
  • Linux--验证命令行上运行的程序的父进程是bash
  • MySQL数据库关于表的一系列操作
  • Spring基于注解管理bean及全注解开发
  • QtC++ 技术分析3 - IOStream