当前位置:网站首页>The El tree implementation only displays a certain level of check boxes and selects radio
The El tree implementation only displays a certain level of check boxes and selects radio
2022-04-23 15:27:00 【Elegant pig】
In fact, after this thing is made , It's quite simple .
Let's talk about the idea of implementation first :
Show only one level of check boxes :el-tree Provided in disabled attribute , When we set... For a node disabled After attribute , Then the current node is disabled , So let's find and add disabled The class name of the node check box , adopt display:none Just hide it , I've already found it here , The code is posted below .
The radio : You all know that there are many check boxes , But demand is always unsatisfactory , You have to choose a single choice , It's not hard . After the election , Get the currently selected node object , Then reset the selected node ( Only the currently selected nodes are set , Single choice )
The key codes are as follows :
el-tree: Components
Note here that it is best to set node-key Otherwise, something might go wrong
<el-tree
:data="treeData"
:props="{ children: 'children', label: 'label' }"
show-checkbox
@check-change="checkChange"
ref="Tree"
:check-strictly="true"
node-key="id"
></el-tree>
After getting the tree data from the back end :
Because I can only choose the innermost layer here ( No children The hierarchy of ) So add... Recursively disabled attribute , No, children Do not add
// Get the right tree data
getTreeList() {
/**
* ajax Got the data and this.treeData = data.data
* After acquisition
*/
this.setDisabled(this.treeData)
},
// Xiang you children Add... On the node of disabled attribute
setDisabled(treeData) {
treeData.forEach(item => {
if(item.children && item.children.length) {
item.disabled = true
this.setDisabled(item.children)
}
})
},
then css:
Just set this here , There are disabled Property will not display the check box
/* Hide el-tree There is disabled Attribute frame */
/deep/.el-checkbox__input.is-disabled{
display: none;
}
Then you can only choose one :
// Select the check box to trigger
checkChange(currObj,isChecked) {
if(isChecked) { // After selecting, we will reset the selected node ( Only the currently selected nodes are set , Single choice )
this.$refs.Tree.setCheckedNodes([currObj])
}
},
effect :

版权声明
本文为[Elegant pig]所创,转载请带上原文链接,感谢
https://yzsam.com/2022/04/202204231523549534.html
边栏推荐
- How to use OCR in 5 minutes
- Mysql连接查询详解
- Squid agent
- Error: unable to find remote key "17f718f726"“
- js——实现点击复制功能
- What role does the software performance test report play? How much is the third-party test report charged?
- Explanation 2 of redis database (redis high availability, persistence and performance management)
- redis-shake 使用中遇到的错误整理
- YML references other variables
- Kubernetes详解(十一)——标签与标签选择器
猜你喜欢

字节面试 transformer相关问题 整理复盘

我的树莓派 Raspberry Pi Zero 2W 折腾笔记,记录一些遇到的问题和解决办法

Detailed explanation of kubernetes (XI) -- label and label selector

Krpano panorama vtour folder and tour

【Leetcode-每日一题】安装栅栏

Reptile exercises (1)

2022年中国数字科技专题分析

regular expression

asp. Net method of sending mail using mailmessage

重定向和请求转发详解
随机推荐
MySQL query library size
C语言超全学习路线(收藏让你少走弯路)
Detailed explanation of redirection and request forwarding
MySQL Basics
redis-shake 使用中遇到的错误整理
On the day of entry, I cried (mushroom street was laid off and fought for seven months to win the offer)
Detailed explanation of C language knowledge points - data types and variables [2] - integer variables and constants [1]
移动app软件测试工具有哪些?第三方软件测评小编分享
Analysis of common storage types and FTP active and passive modes
Llvm - generate addition
My raspberry PI zero 2W toss notes to record some problems and solutions
Tun model of flannel principle
UML learning_ Day2
TLS / SSL protocol details (28) differences between TLS 1.0, TLS 1.1 and TLS 1.2
今日睡眠质量记录76分
深度学习调参的技巧
Rsync + inotify remote synchronization
T2 iCloud日历无法同步
kubernetes之常用Pod控制器的使用
【thymeleaf】处理空值和使用安全操作符