element 问题整合

没关系,凡事发生必有利于我

文章目录

  • [一、el-table 同级数据对齐及展开图标的位置问题](#一、el-table 同级数据对齐及展开图标的位置问题)
  • [二、el-table 勾选框为圆角及只能勾选一个](#二、el-table 勾选框为圆角及只能勾选一个)
  • [三、el-tree 弹框打开,使得列表关闭,且弹框滚动条回到顶部](#三、el-tree 弹框打开,使得列表关闭,且弹框滚动条回到顶部)

一、el-table 同级数据对齐及展开图标的位置问题

element 官方提供的扩展tree型数据在表格里默认是靠左边对齐,项目需求需要同级数据要对齐,且扩展列应该在第三列部门名称上

默认样式

我的需求


1、数据同级问题

javascript 复制代码
// .sysDictInfoTable .el-table__row:not([class*="el-table__row--level-"]):
// 这是一个选择器,表示选择类名为sysDictInfoTable的元素下的.el-table__row元素,
// 但不包括那些类名包含el-table__row--level- 的元素。
// td:nth-child(3):表示选择.el-table__row元素下的第三个td子元素。
// padding-left: 24px !important;:设置td:nth-child(3)元素的左内边距为24像素,
// 并使用!important提高优先级,使这个样式规则优先于其他可能影响该元素的样式规则。

// 对齐不含子目录的所有一级目录
.sysDictInfoTable .el-table__row:not([class*="el-table__row--level-"]) {
	td:nth-child(3) {
		padding-left: 23px !important;
	}
}

// 子项目扩展的样式
.sysDictInfoTable  .el-table__placeholder {
	margin-left: 3px;
}

2、指定扩展图标的位置

二、el-table 勾选框为圆角及只能勾选一个

1、勾选框为圆角

javascript 复制代码
 // 通过控制台可以看到多选框的class名为el-checkbox__inner
 
	span.el-checkbox__inner {
		border-radius: 50% !important;
	}

2、只能勾选一条数据

javascript 复制代码
  handleSelect(selection) {
                //只能选择一行,选择其他,清除上一行
               if (selection.length > 1) {
                   let del_row = selection.shift()
                   //设置这一行取消选中
                   this.$refs.tableData.toggleRowSelection(del_row, false)   
               }
  },

三、el-tree 弹框打开,使得列表关闭,且弹框滚动条回到顶部

触发这个弹框,当我进行筛选时会过滤掉一些数据,树形组件自然会重新渲染展示,当我滚动滚动条时,再点击取消,当用户再次进入,弹框数据不变,滚动条不变,显然非常不符合逻辑,所以加了两个判断,目的是为了 重建,重新渲染 组件
cardVisble 是为了打开弹框时并重新渲染内部组件

相关推荐
lecepin1 小时前
AI Coding 资讯 2025-09-17
前端·javascript·面试
猩兵哥哥2 小时前
前端面向对象设计原则运用 - 策略模式
前端·javascript·vue.js
江城开朗的豌豆2 小时前
解密React虚拟DOM:我的高效渲染秘诀 🚀
前端·javascript·react.js
江城开朗的豌豆2 小时前
React应用优化指南:让我的项目性能“起飞”✨
前端·javascript·react.js
Asort2 小时前
JavaScript 从零开始(六):控制流语句详解——让代码拥有决策与重复能力
前端·javascript
EMT3 小时前
在 Vue 项目中使用 URL Query 保存和恢复搜索条件
javascript·vue.js
艾小码3 小时前
还在被超长列表卡到崩溃?3招搞定虚拟滚动,性能直接起飞!
前端·javascript·react.js
前端康师傅3 小时前
JavaScript 作用域常见问题及解决方案
前端·javascript
我是日安3 小时前
从零到一打造 Vue3 响应式系统 Day 9 - Effect:调度器实现与应用
前端·vue.js
Mintopia3 小时前
🚀 Next.js 全栈 E2E 测试:Playwright vs Cypress
前端·javascript·next.js