<el-tree
class="filter-tree"
:data="permissionData"
:props="props"
node-key="id"
ref="treeForm"
show-checkbox
:default-checked-keys="this.savedPermissionIds"
:default-expanded-keys="this.savedPermissionIds"
@check="getCheckedNodes"
></el-tree>
   showDialog(id) {
this.isShowPermissionTree = true;
this.roleId = id;
this.savedPermissionIds = [];
this.getPermissionTree();
},
//获取用户勾选的权限id用于传参后台
getCheckedNodes() {
// let selectedPermission = this.$refs.treeForm.getCheckedNodes(false, true); //(leafOnly, includeHalfChecked) 接收两个 boolean 类型的参数,1. 是否只是叶子节点,默认值为 false 2. 是否包含半选节点,默认值为 false
// this.permissionIds = selectedPermission.map(item => {
// return item.id;
// });
let parentArr = this.$refs.treeForm.getHalfCheckedKeys();
let childeArr = this.$refs.treeForm.getCheckedKeys();
let arr = childeArr.concat(parentArr);
this.permissionIds = arr;
},
//取消
cancel() {
this.isShowPermissionTree = false;
this.savedPermissionIds = [];
this.getPermissionTree();
},
//获取树形权限列表
getPermissionTree() {
menulistByPid({ flag: 1 }).then(res => {
this.permissionData = res.body;
//获取权限管理配置id并显示
getPermissionIds({ roleId: this.roleId }).then(res => {
this.savedPermissionIds = res.body;
let newArr = [];
let item = "";
if (this.savedPermissionIds && this.savedPermissionIds.length !== 0) {
this.savedPermissionIds.forEach(item => {
this.checked(item, this.permissionData, newArr);
});
this.savedPermissionIds = newArr;
// console.log("this.savedPermissionIds111", this.savedPermissionIds);
}
});
});
},
checked(id, data, newArr) {
data.forEach(item => {
if (item.id == id) {
if (item.items && item.items.length == 0) {
newArr.push(item.id);
}
} else {
if (item.items != null && item.items.length != 0) {
this.checked(id, item.items, newArr);
}
}
});
// console.log("newArr", newArr);
},

element-ui default-checked-keys 会把节点下所有子节点全部勾选解决方法的更多相关文章

  1. bootstrap-treeview 如何实现全选父节点下所有子节点及反选

    转(https://www.augsky.com/992.html) 选中父节点时,父节点下所有子节点也都全部选中 1,HTML代码 <h2>TreeView Checkable</ ...

  2. jQuery 判断父节点下是否有子节点

    查找父节点下是否有子节点有两个情况:(1)查找的是父元素的所有后代节点:(2)仅查找父元素的第一代子节点. <div id="app"> <div> < ...

  3. element ui 弹出组件的遮罩层在弹出层的上面的解决方法

    <el-dialog title="收货地址" :visible.sync="dialogFormVisible" :modal-append-to-bo ...

  4. [SQL]T-Sql 递归查询(给定节点查所有父节点、所有子节点的方法)

    T-Sql 递归查询(给定节点查所有父节点.所有子节点的方法)   -- 查找所有父节点with tab as( select Type_Id,ParentId,Type_Name from Sys_ ...

  5. 在论坛中出现的比较难的sql问题:21(递归问题 检索某个节点下所有叶子节点)

    原文:在论坛中出现的比较难的sql问题:21(递归问题 检索某个节点下所有叶子节点) 最近,在论坛中,遇到了不少比较难的sql问题,虽然自己都能解决,但发现过几天后,就记不起来了,也忘记解决的方法了. ...

  6. mysql 递归查找菜单节点的所有子节点

    背景                                                                                                   ...

  7. T-Sql 递归查询(给定节点查所有父节点、所有子节点的方法)

    -- 查找所有父节点with tab as( select Type_Id,ParentId,Type_Name from Sys_ParamType_V2_0 where Type_Id=316-- ...

  8. configSections必须是根节点下第一个节点

    对webconfig文档进行配置,添加了一个节点configSectionS,添加时,我自个想,按节点的名称以字母排序,就放在appSettings节点下. 谁知,在程序运行时,出现了错误: 参考上面 ...

  9. element Ui的级联选择器 任意一级选中下拉框自动关闭

    封装成一个子组件 <template> <el-cascader v-model="value" clearable placeholder="请选择& ...

随机推荐

  1. vscode 常用设置与插件推荐

    1.Chinese (Simplified) Language Pack for Visual Studio Code 适用于 VS Code 的中文(简体)语言包 2.Color Info Visu ...

  2. 【转载】 谷歌集群数据分析 clusterdata-2011-2

    原文地址: https://www.twblogs.net/a/5c2dc304bd9eee35b21c418b/zh-cn ------------------------------------- ...

  3. 测试一下windowsLiveWriter

    一个是看看这个东西能不能发布出博客,还有一个就是准备开始写博客了,所以随便写个作为开始吧,我不想多说什么目标啊,什么的,所以就这一句简单的一句话就够了.

  4. Go 包导入备忘

    一 包的导入语法     在写Go代码的时候经常用到import这个命令用来导入包文件,看到的方式参考如下:     import(         "fmt"     )    ...

  5. 【PV和PVC】kubernetes存储 persistent volume(持久化硬盘)和 persistent volume claim(持久化硬盘请求)

    报错:pod has unbound immediate PersistentVolumeClaims (repeated 11 times) pv没有满足pvc需求 https://www.cnbl ...

  6. echars 3.0 去掉柱状图阴影用什么属性

    原图展示: 效果图展示: 在代码中注释掉这段 // tooltip : { // trigger: 'axis', // axisPointer : { // 坐标轴指示器,坐标轴触发有效 // ty ...

  7. python3传文件到linux服务器然后解压

    #!/usr/bin/env python # -*- coding:utf-8 -*- import os import paramiko import time from scp import S ...

  8. Data - 数据思维 - 中篇

    6 - 模型与框架 利用现有的成熟的理论.模型与框架,结合实际业务情况,搭建分析框架,尽量确保数据分析维度的完整性,结果的有效性及正确性. 营销理论模型:4P.用户使用行为.STP理论.SWOT等. ...

  9. consul(一)什么是consul

    1. consul的基本介绍 在分布式架构中,服务治理是一个重要的问题.在没有服务治理的分布式集群中,各个服务之间通过手工或者配置的方式进行服务关系管理,遇到服务关系变化或者增加服务的时候,人肉配置极 ...

  10. Python机器学习基础教程-第2章-监督学习之K近邻

    前言 本系列教程基本就是摘抄<Python机器学习基础教程>中的例子内容. 为了便于跟踪和学习,本系列教程在Github上提供了jupyter notebook 版本: Github仓库: ...