element-ui_el-tree_树形结构

element-ui_el-tree_树形结构

目录




内容

1、简介

  • 应用场景:树形结构或者层级数据的简单展示

  • 效果图示:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rT2ncIho-1610886311761)(./images/2021-01-16_auth-perms-level.png)]

2、详解

  • 常用属性
名称类型取值默认值描述
dataarray--被渲染的数据
node-keystring--节点的唯一标志
propsobject--配置项,见prop详细
loadboolean-false加载子级数组,当lazy为true是有效
default-expand-allboolean-true是否默认全部展开
default-expended-keysarray--默认展开项的key数组,前提设置node-key
show-checkboxboolean-false是否显示多选框
check-strictlyboolean-false父级与子级关联绑定
accordionboolean-false是否同级只展示1个
lazyboolean-false是否开启懒加载
  • props配置
名称类型取值默认值描述
labelstring,function(data,node)--指定对象的哪个属性做标签使用
childrenstring--指定对象的哪个属性为子级数据
isLeafboolean,function(data,node)--是否是叶子节点
  • 常用方法
名称参数描述
getCheckedKeysleafOnly获取选中节点的key数组
setCheckedKeyskeys,leafOnly设置选中的节点key数组
getHalfCheckedKeys获取半选中节点key数组
  • 常用事件
名称参数描述
node-click点击节点触发
check-change多选框选择改变触发

3、tree常见问题及解决方法

  • 效果图源代码:

       <el-tree
      			ref="tree"
      			:data="permList"
      			:props="defaultProps"
      			:check-strictly="checkStrictly"
      			show-checkbox
      			default-expand-all
      			node-key="id"
      			class="permission-tree"
      	 />
    

3.1、tree的回显

  • 初始版本

    1. 使用属性,:default-checked-keys=“checkedIds”。
    2. 在触发弹出框之前,异步请求角色有的权限id数组,初始化checkedIds
  • 问题,虽然效果实现了但是角色没有权限的回显也会显示之前有权限回显的数据

  • 解决方法

    1. 改用属性:check-strictly=“checkStrictly”

       showAssign(id) {
       	  this.checkStrictly = true
       	  // this.checkedIds  = []
       	  this.assignForm.id = id;
       	  getPermsByRoleId(id).then(resp => {
       		this.assignDialogVisible = true
       		this.$refs.tree.setCheckedKeys(resp.permIds)
       		this.checkStrictly = false
       	  })
      
       }
      

如遇到新问题持续更新……

参考地址:
https://my.oschina.net/gmarshal/blog/1843526
https://blog.csdn.net/jasmine0178/article/details/103600508

页面和后端完整代码在下面仓库中。

后记

本项目为参考某马视频开发,相关视频及配套资料可自行度娘或者联系本人。上面为自己编写的开发文档,持续更新。欢迎交流,本人QQ:806797785

 后端JAVA源代码地址:https://gitee.com/gaogzhen/ihrm-parent    // 后端项目
 前端项目源代码地址:https://gitee.com/gaogzhen/ihrm-vue    // 前端后台管理系统
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gaog2zh

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值