1 refreshTreeNode(isParent) { 2 // 如果传入isParent 为真则刷新父元素,主要是用来重命名,或者复制的时候使用的;刷新当前的节点,一般的情况是添加操作 3 let node = isParent 4 ? this.$refs.treeRef.getNode(‘父节点的唯一ID’) 5 : this.$refs.treeRef.getNode(‘当前节点的唯一D’); 6 if (node...
// 获取根节点 let rootNode = this.$refs.tree.getNode(this.treeData[0].id).parent; travelNodes(rootNode); function travelNodes(tmpRoot) { // 选中该节点 tmpRoot.checked = true; // 叶子节点 if (tmpRoot.childNodes.length === 0) { return; } // 不是叶子节点,递归遍历 else { let tm...
需求:目录树,右键有菜单,菜单中按钮会随着节点变化而显示和隐藏,比如根节点不允许删除和修改以及新增同级节点,子节点允许这些按钮存在 我的解决方案:点击的时候获取了节点数据,然后右键就能控制显示和隐藏 然而:用户操作不近如人意,他没有先选中,再右键,直接鼠标放到节点上面就右击了,而且是节点空白处 卧槽,这就尴尬...
有时候需要获取el-tree每个节点的点击状态,可以通过以下方式,其中isCheck类型为布尔值 <el-tree:data="organizationData":props="defaultProps":check-strictly="isAssociate"node-key="organizationId":expand-on-click-node="false"@check="getCurrentNode"ref="tree"></el-tree> 1.绑定@check事件,我这里是getC...
let nodeCount=1//当前树展开节点的数量let nodeIndex=1//当前选中节点在当前树的位置let dataIndex;//后台返回当前选中节点的父节点是当前的第几位for(let i=0;i<this.orgListLine.length;i++){if(this.orgListLine[i].subDeptList!=null){//有子集节点的if(this.orgListLine[i].orgCode==this.orgLi...
1. 选中父节点,只勾选当前节点 2. 选中子节点,勾选上面所有的父节点,除了根节点 3. 取消勾选子节点,如果有同级子节点是勾选状态,父节点不取消勾选;反之取消 效果展示: 修改el-tree组件的父子关系,选中节点后向上选中所有父级 代码实现: html部分: ...
使用el-tree来展示权限树结构信息,然后把所有选中的节点都传给后端,后端查询数据时出现一个问题,如果选中的是根节点,前端就会把整棵树的数据都传给后端,后端sql执行性能差。 后端提出要求,如果子节点都选中了,就不要传子节点了,只要把父节点的信息传出去。element-ui文档没有现成的方法。只能自己实现,代码如下: ...
一般来说,我们需要从后端获取数据,然后将其赋值给el-tree的data属性。在Vue的mounted钩子函数中,我们可以调用后端接口获取数据,并将其赋值给treeData,如代码所示: mounted() { //假设后端接口返回一个根节点为tree的树状数据 getTreeData() .then((res) => { this.treeData = res.tree; .catch((error) =...
catch((res) => { console.log(res, 'catch'); }); }, //获取树列表的所有节点 ==> 这里是计算出所有子节点的个数 getTreeNodeIDList(data) { var str = 0; const getStr = function (list) { list.forEach(function (row) { if (row.child) { getStr(row.child); str += 1; } else ...