当前位置: 首页 > news >正文

elementUI中el-tree组件单选没有复选框时,选中、current-node-key高亮、刷新后保留展开状态功能的实现

目录

  • 一、代码实现
    • 1. 属性了解 ([更多](https://element.eleme.cn/#/zh-CN/component/tree))
    • 2. 实现步骤
    • 3.代码示例
  • 二、 效果图

一、代码实现

1. 属性了解 (更多)

  1. node-key 每个树节点用来作为唯一标识的属性,整棵树应该是唯一的 String
  2. current-node-key 当前选中的节点 string, number
  3. expand-on-click-node 是否在点击节点的时候展开或者收缩节点, 默认值为 true,如果为 false,则只有点箭头图标的时候才会展开或者收缩节点。 boolean — true
  4. default-expand-all 是否默认展开所有节点 boolean — false
  5. highlight-current 是否高亮当前选中节点,默认值是 false。 boolean — false
  6. check-on-click-node 是否在点击节点的时候选中节点,默认值为 false,即只有在点击复选框时才会选中节点。 boolean — false

2. 实现步骤

  1. 设置一个固定值 node-key=“id”, 根据实际项目配置唯一的标记

  2. 定义当前选中节点 :current-node-key=“currentDeptId”

  3. 设置highlight-current为true

  4. 设置current-node-key为currentDeptId,同时刷新接口时重新设置currentDeptId,代码如下

    this.$nextTick(() => {this.$refs['tree'].setCurrentKey(this.currentDeptId);
    })
    

    3.代码示例

    1.html部分

      <el-tree :data="deptOptions" :props="defaultProps" node-key="id" :expand-on-click-node="false"ref="tree" default-expand-all highlight-current @node-click="handleNodeClick":current-node-key="currentDeptId" :check-on-click-node="true"><span class="custom-tree-node" slot-scope="{ node, data }"><span>{{ node.label }} </span></span></el-tree>
    
    1. js部分:
       // 部门树选项deptOptions: undefined,// 配置选项defaultProps: {children: "children",label: "label",},//默认选中的部门currentDeptId: null,   // 比如:107currentDeptName: null, methods: {// 节点单击事件handleNodeClick(data) {console.log(data, '节点单击事件')this.currentDeptId = data.idthis.currentDeptName = data.label},}
    

    根据实际需要,在刷新下拉树的时候,这个currentDeptId,需要重置。(以便在刷新后,保留刷新前的选中状态)

     /** 查询下拉树结构 */getTreeselect() {deptTreeselect({}).then((response) => {this.deptOptions = response.data;// 设置highlight-current为true// 设置current-node-key为currentDeptId,同时刷新接口时重新设置currentDeptId,新后保留展开状态功能的实现 ,代码如下// 设置选中this.$nextTick(() => {this.$refs["tree"].setCurrentKey(this.currentDeptId);});});},
    
    1. css部分
    <style scoped>
    /*  鼠标hover改变背景颜色 *//deep/ .el-tree-node  .el-tree-node__content:hover {background-color: #f0f7ff !important;color: #409eff;}/*  颜色高亮 *//deep/ .el-tree--highlight-current .el-tree-node.is-current>.el-tree-node__content {color: #409eff;}
    </style>
    

    二、 效果图

    在这里插入图片描述

相关文章:

elementUI中el-tree组件单选没有复选框时,选中、current-node-key高亮、刷新后保留展开状态功能的实现

目录 一、代码实现1. 属性了解 &#xff08;[更多](https://element.eleme.cn/#/zh-CN/component/tree)&#xff09;2. 实现步骤3.代码示例 二、 效果图 一、代码实现 1. 属性了解 &#xff08;更多&#xff09; node-key 每个树节点用来作为唯一标识的属性&#xff0c;整棵树…...

Ubuntu上开启FTP服务教程

在Ubuntu服务器上配置FTP服务是一个常见的需求&#xff0c;无论是用于文件分享、网站管理还是数据备份。FTP&#xff08;文件传输协议&#xff09;是一种用于在网络上传输文件的协议&#xff0c;它可以让用户通过身份验证下载或上传文件。本文将指导您如何在Ubuntu系统上安装和…...

C语言数组指针详解与应用

在C语言中&#xff0c;指针是一种特殊的变量类型&#xff0c;存储了其他变量的地址。数组指针则是指向数组的指针&#xff0c;它提供了更灵活的方式处理数组。本篇博客将详细介绍指针和数组指针的概念&#xff0c;并通过实例演示如何使用指针对数组进行初始化、修改和遍历。 什…...

计算机服务器中了DevicData勒索病毒如何解密,DevicData勒索病毒解密流程

网络数据安全一直是企业关心的主要话题&#xff0c;近期&#xff0c;云天数据恢复中心接到很多企业的求助&#xff0c;企业的计算机服务器遭到了DevicData勒索病毒攻击&#xff0c;导致企业计算机服务器瘫痪无法正常工作&#xff0c;严重影响了工作业务开展。经过云天数据恢复中…...

面试150 位1的个数 位运算

Problem: 191. 位1的个数 文章目录 思路复杂度Code 思路 &#x1f468;‍&#x1f3eb; 参考 复杂度 Code public class Solution {// you need to treat n as an unsigned valuepublic int hammingWeight(int n){int res 0;while (n ! 0){res 1;n & n - 1;// 把最后…...

Mysql的BufferPool

Mysql的BufferPool Mysql是一个存储数据到磁盘的进程&#xff0c;但是磁盘的速度难以与CPU相比&#xff0c;所以InnoDB存储引擎在处理客户端的请求时&#xff0c;当需要访问某个页的数据时&#xff0c;就会把完整的页的数据全部加载到内存中。将整个页加载到内存中后就可以进行…...

嵌入式中物联网核心技术有哪些

IoT军事技术 物联网军事技术是一项利用IoT感知技术在军事活动中获取人、装备、作战环境状态的信息特征&#xff0c;从而实现在军事活动中做出智能化决策和控制局势的军事方针。 据悉&#xff0c;早于2012年10月军方联合了社会研究机构合力创建了“军事物联网联合实验室”。 …...

C语言入门到精通之练习36:一个最优美的图案(在TC中实现)。

题目&#xff1a;一个最优美的图案&#xff08;在TC中实现&#xff09;。 程序分析&#xff1a;无。 程序源代码&#xff1a; 实例 // Created by www.erdangjiade.com on 15/11/9. //#include "graphics.h" #include "math.h" #include "dos.h&…...

【Nginx】nginx入门

文章目录 一、Web服务器二、Nginx三、Nginx的作用Web服务器正向代理反向代理 四、CentOS上安装Nginx(以CentOS 7.9为例) 一、Web服务器 Web 服务器&#xff0c;一般是指“网站服务器”&#xff0c;是指驻留于互联网上某种类型计算机的程序。Web 服务器可以向 Web 浏览器等客户…...

【数据结构】并查集(路径压缩)

文章目录 并查集1.朴素版本2.路径压缩3.按秩合并4.启发式合并5.练习题 并查集 1.朴素版本 1. 并查集解决的是连通块的问题&#xff0c;常见操作有&#xff0c;判断两个元素是否在同一个连通块当中&#xff0c;两个非同一连通块的元素合并到一个连通块当中。 并查集和堆的结构…...

FreeMark ${r‘原样输出‘} ${r“原样输出“}

FreeMark ${r’原样输出’} ${r"原样输出"} 在${}使用 小写字母r接两个单引号或两个双引号包裹的内容可以原样输出, 字母r只能用小写 ${r想要原样输出的内容} --用了单引号${r"想要原样输出的内容"} --用了双引号 例子: ${r"${r}"} 得到 ${r…...

nginx初学者指南

一、启动、停止和重新加载配置 前提&#xff1a;先要启动nginx 在Windows上启动nginx的步骤如下&#xff1a; 1. 下载并安装nginx。可以从nginx官网下载适合自己操作系统的版本&#xff0c;一般是zip压缩包&#xff0c;解压到指定目录中。 2. 进入nginx的安装目录&#xff…...

第二十五天| 216.组合总和III、17.电话号码的字母组合

Leetcode 216.组合总和III 题目链接&#xff1a;216 组合总和III 题干&#xff1a;找出所有相加之和为 n 的 k 个数的组合&#xff0c;且满足下列条件&#xff1a; 只使用数字1到9每个数字 最多使用一次 返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次&#…...

HTML+CSS:全景轮播

效果演示 实现了一个简单的网页布局&#xff0c;其中包含了五个不同的盒子&#xff0c;每个盒子都有一个不同的背景图片&#xff0c;并且它们之间有一些间距。当鼠标悬停在某个盒子上时&#xff0c;它的背景图片会变暗&#xff0c;并且文字会变成白色。这些盒子和按钮都被放在一…...

【WPF.NET开发】​优化性能:布局和设计

本文内容 WPF 应用程序的设计可能会在计算布局和验证对象引用时产生不必要的开销&#xff0c;从而影响性能。 对象的构造会影响应用程序的性能特征&#xff0c;在运行时更是如此。本主题提供这些方面的性能改进建议。 Layout “布局过程”一词描述了测量和排列 Panel&#x…...

go语言-context的基本使用

1. 什么是 Context&#xff1f; Go 1.7 标准库引入 context&#xff0c;中文译作“上下文”&#xff0c;准确说它是 goroutine 的上下文&#xff0c;包含 goroutine 的运行状态、环境、现场等信息。 context 主要用来在 goroutine 之间传递上下文信息&#xff0c;包括&#x…...

《计算机网络简易速速上手小册》第9章:物联网(IoT)与网络技术(2024 最新版)

文章目录 9.1 IoT 架构与通信协议 - 打造智能世界的秘诀9.1.1 基础知识9.1.2 重点案例&#xff1a;使用 Python 和 MQTT 实现智能家居照明系统准备工作Python 脚本示例发布者&#xff08;灯光控制&#xff09;订阅者&#xff08;灯光状态接收&#xff09;&#xff1a; 9.1.3 拓…...

开源博客项目Blog .NET Core源码学习(8:EasyCaching使用浅析)

开源博客项目Blog使用EasyCaching模块实现缓存功能&#xff0c;主要是在App.Framwork项目中引用了多类包&#xff0c;包括内存缓存&#xff08;EasyCaching.InMemory&#xff09;、Redis缓存&#xff08;EasyCaching.CSRedis&#xff09;&#xff0c;同时支持多种序列化方式&am…...

windows下docker的使用

目录 1&#xff1a;docker是什么&#xff0c;能干什么&#xff1f; 2&#xff1a;docker下初始化一个容器 1&#xff1a;工具支持 2&#xff1a;运行装载docker镜像 a&#xff1a;在docker toolbox底下有个start.sh&#xff0c;我们进去里面修改里面路径配置&#xff1a; …...

C语言——R/预处理详解

一、预定义符号 C语⾔设置了⼀些预定义符号&#xff0c;可以直接使⽤&#xff0c;预定义符号也是在预处理期间处理的。 __FILE__ //进⾏编译的源⽂件 __LINE__ //⽂件当前的⾏号 __DATE__ //⽂件被编译的⽇期 __TIME__ //⽂件被编译的时间 __STDC__ //如果编译器遵循ANSI C&a…...

IGP(Interior Gateway Protocol,内部网关协议)

IGP&#xff08;Interior Gateway Protocol&#xff0c;内部网关协议&#xff09; 是一种用于在一个自治系统&#xff08;AS&#xff09;内部传递路由信息的路由协议&#xff0c;主要用于在一个组织或机构的内部网络中决定数据包的最佳路径。与用于自治系统之间通信的 EGP&…...

基础测试工具使用经验

背景 vtune&#xff0c;perf, nsight system等基础测试工具&#xff0c;都是用过的&#xff0c;但是没有记录&#xff0c;都逐渐忘了。所以写这篇博客总结记录一下&#xff0c;只要以后发现新的用法&#xff0c;就记得来编辑补充一下 perf 比较基础的用法&#xff1a; 先改这…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

Spring是如何解决Bean的循环依赖:三级缓存机制

1、什么是 Bean 的循环依赖 在 Spring框架中,Bean 的循环依赖是指多个 Bean 之间‌互相持有对方引用‌,形成闭环依赖关系的现象。 多个 Bean 的依赖关系构成环形链路,例如: 双向依赖:Bean A 依赖 Bean B,同时 Bean B 也依赖 Bean A(A↔B)。链条循环: Bean A → Bean…...

MySQL 知识小结(一)

一、my.cnf配置详解 我们知道安装MySQL有两种方式来安装咱们的MySQL数据库&#xff0c;分别是二进制安装编译数据库或者使用三方yum来进行安装,第三方yum的安装相对于二进制压缩包的安装更快捷&#xff0c;但是文件存放起来数据比较冗余&#xff0c;用二进制能够更好管理咱们M…...

C语言中提供的第三方库之哈希表实现

一. 简介 前面一篇文章简单学习了C语言中第三方库&#xff08;uthash库&#xff09;提供对哈希表的操作&#xff0c;文章如下&#xff1a; C语言中提供的第三方库uthash常用接口-CSDN博客 本文简单学习一下第三方库 uthash库对哈希表的操作。 二. uthash库哈希表操作示例 u…...

书籍“之“字形打印矩阵(8)0609

题目 给定一个矩阵matrix&#xff0c;按照"之"字形的方式打印这个矩阵&#xff0c;例如&#xff1a; 1 2 3 4 5 6 7 8 9 10 11 12 ”之“字形打印的结果为&#xff1a;1&#xff0c;…...

CppCon 2015 学习:REFLECTION TECHNIQUES IN C++

关于 Reflection&#xff08;反射&#xff09; 这个概念&#xff0c;总结一下&#xff1a; Reflection&#xff08;反射&#xff09;是什么&#xff1f; 反射是对类型的自我检查能力&#xff08;Introspection&#xff09; 可以查看类的成员变量、成员函数等信息。反射允许枚…...

Android屏幕刷新率与FPS(Frames Per Second) 120hz

Android屏幕刷新率与FPS(Frames Per Second) 120hz 屏幕刷新率是屏幕每秒钟刷新显示内容的次数&#xff0c;单位是赫兹&#xff08;Hz&#xff09;。 60Hz 屏幕&#xff1a;每秒刷新 60 次&#xff0c;每次刷新间隔约 16.67ms 90Hz 屏幕&#xff1a;每秒刷新 90 次&#xff0c;…...

在Spring Boot中集成RabbitMQ的完整指南

前言 在现代微服务架构中&#xff0c;消息队列&#xff08;Message Queue&#xff09;是实现异步通信、解耦系统组件的重要工具。RabbitMQ 是一个流行的消息中间件&#xff0c;支持多种消息协议&#xff0c;具有高可靠性和可扩展性。 本博客将详细介绍如何在 Spring Boot 项目…...