Treeselect是介绍及使用(梳理了我使用这个组件遇到的大部分问题)

介绍:

Treeselect是一款基于Vue.js的树形选择器组件,可以快速地实现树形结构的选择功能。

这里梳理了我使用这个组件遇到的大部分问题

安装依赖:

首先,你需要在你的项目中安装Treeselect的依赖。这通常可以通过npm或yarn等来完成。

我是通过npm安装的

npm install @riophae/vue-treeselect --save

引入组件

需要引入Treeselect组件和它的样式文件不引入样式文件的话你会发现奇妙的效果,哈哈

import Treeselect from '@riophae/vue-treeselect'  
import '@riophae/vue-treeselect/dist/vue-treeselect.css'

小可爱们,记得别忘记引入样式文件哦。

如果你忘了,依然是小可爱哈。

奇妙的效果:

正常效果:

 声明组件:

通过Vue.component或在你的组件中直接使用components属性来完成。

components单词别写错了哦,少加s什么的

Vue.component('Treeselect', Treeselect)  
// 或者在组件中  
export default {  
  components: {  
    Treeselect  
  }  
}

基本的使用:

<Treeselect
  v-model="value"   
  :options="options"   
  placeholder="请选择"   
  clearable   
  searchable  
/>

基本属性:

  • multiple:设置是否支持多选。
  • disabled:设置是否禁用组件。
  • clearable:设置是否显示清空按钮。
  • placeholder:设置输入框占位符文字。默认值为"请选择"。
  • searchable:设置是否显示搜索框,以供过滤可选项列表中的选项。

 下面是我经常用到的一些:(直接代码附上)

          <el-form-item label="">
            <!-- <el-select placeholder="业务模块" style="width: 150px;" filterable clearable v-model="queryParams.title">
              <el-option v-for="(item, index) in modelList" :key="index" :label="item.label" :value="item.id">
              </el-option>
            </el-select> -->
            <Treeselect
              v-model="queryParams.title"
              :multiple="false"
              :appendToBody="true"
              :options="modelList"
              :normalizer="normalizer"
              placeholder="业务模块"
              noOptionsText="暂无数据"
              noChildrenText="没有子选项"
              noResultsText="没有匹配的结果"
              :disable-branch-nodes="true"
              style="width: 150px;"
            />
          </el-form-item>

提醒:

 对queryParams.title进行重置不能让其变为‘’空字符需要改成undefined

 this.modelList=[]
    this.queryParams.title=undefined

 不然就出现了unknown,我这里是通过操作端进行联动的,当我x掉操作端,需要进行一个置空操作

 

变为undefined的正常效果,别写成了'undefined'

我通常用到的属性的介绍:(很实用哦,有效解决问题

  1. :appendToBody="true"
    • 将下拉列表(popover)附加到body元素上,而不是父元素。这有助于解决在某些CSS样式或z-index设置下下拉列表显示不全的问题。
    • 就是下拉被其他的遮罩了,添加这个属性即可解决
    • 解决前:解决后:
  2. :options="modelList"
    • 绑定Vue实例中的modelList数组到组件的可选项数据源。
  3. :normalizer="normalizer"
    • 绑定一个函数normalizer,用于在内部处理选项数据,比如转换数据结构添加额外属性
    •    //拿到树状后进行处理,自己常用的:
       normalizer(node) {
            if (node.children && !node.children.length) {
              delete node.children;
            }
            return {
              id: node.id,
              label: node.label,
              children: node.children,
            };
          },

      下面4,6以前测试给我提过bug

  4. noOptionsText="暂无数据"
    • 当没有可选项时显示的文本。
    • 使用前后对比:
  5. noChildrenText="没有子选项"
    • 当一个节点没有子节点时显示的文本。
  6. noResultsText="没有匹配的结果"
    • 当搜索时没有匹配的结果时显示的文本。
    • 使用前后对比:
  7. :disable-branch-nodes="true"
    • 禁用分支节点(即只能选择叶子节点,不能选择非叶子节点)。
    • 简单来讲就是只能选中最后一级
    • 视频效果:

 看到这里是不是受益良多,嘿嘿,希望大家多多补充哦。

 其他比较用的少的举例:

  1. :closeOnSelect="true"
    • 当选择一个选项后,自动关闭下拉列表。
  2. :closeOnClear="true"
    • 当清除已选中的值时,自动关闭下拉列表。
  3. :openOnFocus="true"
    • 当组件获得焦点时,自动打开下拉列表。
  4. :value-constrainer="function"
    • 绑定一个函数,用于在选中或取消选中选项时,限制或修改值。
  5. :loading="boolean"
    • 设置组件的加载状态。当为true时,组件会显示加载中的样式。
  6. :loadOptions="function"
    • 绑定一个函数,用于异步加载子选项。当用户尝试展开一个节点时,这个函数会被调用。
  7. @change="function"
    • 当选中值发生变化时触发的事件处理函数。

整理一些以前遇到的问题, 希望对大家有用,感谢呐!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/726227.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

多线程(总结黑马程序员)

一、什么是线程&#xff1f; 是一个程序内部的一条执行流程 多线程是什么&#xff1f; 多条线程由CPU负责调度执行 多线程的创建方式一&#xff1a;继承Thread类 //1.继承Thread类 public class MyThread extends Thread {//2.必须重写run方法Overridepublic void run() {…

理解HTTP请求格式

HTTP概念 HTTP全称HyperTextTransfer Protocol(超文本传输协议)是一种用于分布式、协作式和超媒体信息系统的应用层协议&#xff1b;HTTP是一个客户端&#xff08;用户&#xff09;和服务端&#xff08;网站&#xff09;之间请求和响应的标准。 HTTP 协议是以 ASCII 码传输&…

FreeRtos-13资源管理

一、临界资源是什么 要独占式地访问临界资源,有3种方法: 1.公平竞争:比如使用互斥量,谁先获得互斥量谁就访问临界资源,这部分内容前面讲过。 谁要跟我抢,我就灭掉谁: 2.中断要跟我抢?我屏蔽中断 3.其他任务要跟我抢?我禁止调度器,不运行任务切换 二、暂停调度器…

【漏洞复现】极限OA video_file.php 任意文件读取漏洞

免责声明&#xff1a; 本文内容旨在提供有关特定漏洞或安全漏洞的信息&#xff0c;以帮助用户更好地了解可能存在的风险。公布此类信息的目的在于促进网络安全意识和技术进步&#xff0c;并非出于任何恶意目的。阅读者应该明白&#xff0c;在利用本文提到的漏洞信息或进行相关测…

线性回归模型介绍

线性回归模型是一种统计方法,用于分析两个或多个变量之间的关系。它通过拟合一条直线(称为回归线)来描述因变量(或目标变量)和一个或多个自变量(或预测变量)之间的关系。这种模型主要用于预测和解释变量间的线性关系。以下是线性回归模型的简单介绍: 1. 线性回归模型的…

文本挖掘与可视化:生成个性化词云的Python实践【7个案例】

文本挖掘与可视化&#xff1a;生成个性化词云的Python实践【7个案例】 词云&#xff08;Word Cloud&#xff09;&#xff0c;又称为文字云或标签云&#xff0c;是一种用于文本数据可视化的技术&#xff0c;通过不同大小、颜色和字体展示文本中单词的出现频率或重要性。在词云中…

技术支持与开发助手:Kompas AI的革新力量

一、引言 随着技术发展的迅猛进步&#xff0c;技术开发的高效需求日益增加。开发人员面临着更复杂的项目、更紧迫的时间表以及不断提高的质量标准。在这种背景下&#xff0c;能够提供智能支持的工具变得尤为重要。Kompas AI 正是在这种需求下应运而生的。它通过人工智能技术&a…

Arduino平台软硬件原理及使用——电位器模块的使用

文章目录 一、电位器工作原理 二、电位器与滑动变阻器的异同 三、电位器模块在Arduino中的使用 一、电位器工作原理 上图为市面上常见的电位器元件实物图&#xff0c;其结构及封装根据不同的应用场景也有着不同&#xff0c;但其原理及本质基本一致。 电位器是具有三个引出端、…

车牌号识别(低级版)

import cv2 from matplotlib import pyplot as plt import os import numpy as np from paddleocr import PaddleOCR, draw_ocr from PIL import Image, ImageDraw, ImageFont# 利用paddelOCR进行文字扫描&#xff0c;并输出结果 def text_scan(img_path):ocr PaddleOCR(use_a…

[Mysql] 数据库基本概念

前言---数据库系统发展史 当今主流数据库介绍 一、操作系统 Linux操作系统 &#xff1a;RedHat CentOS Debian Ubuntu OpenSUSE 信创标准 会让系统逐渐国产化 国产系统&#xff1a;华为 欧拉 阿里 龙蜥 腾讯 tencentOS 银河麒麟 中标麒麟…

Linux远程管理日志

实验介绍 本实验旨在实现主机将日志远程发送到堡垒机或远程服务器上&#xff0c;实现通过一台机器管理整个网络内的主机的效果。 准备两台虚拟机作为生产主机和管理机&#xff0c;保证网络通畅&#xff0c;展示如下&#xff1a; 关闭firewalld&#xff0c;通过配置rsyslog&a…

分布式锁实现方案

分布式锁 1 什么是分布式锁 ​ 就是在分布式环境下&#xff0c;保证某个公共资源只能在同一时间被多进程应用的某个进程的某一个线程访问时使用锁。 2 几个使用场景分析 一段代码同一时间只能被同一个不同进程的一个线程执行 库存超卖 (库存被减到 负数)&#xff0c;上面案…

【机器学习】【深度学习】MXnet神经网络图像风格迁移学习简介

使用部分 一、编程环境 编程环境使用Windows11上的Anaconda环境&#xff0c;Python版本为3.6. 关于Conda环境的建立和管理&#xff0c;可以参考我的博客&#xff1a;【Anaconda】【Windows编程技术】【Python】Anaconda的常用命令及实操 二、项目结构&#xff08;代码非原创…

CTF-pwn-虚拟化-【d3ctf-2021-d3dev】

文章目录 参考流程附件检查启动信息逆向分析漏洞查看设备配置信息exp 参考 https://x1ng.top/2021/11/26/qemu-pwn/ https://bbs.kanxue.com/thread-275216.htm#msg_header_h1_0 https://xz.aliyun.com/t/6562?time__1311n4%2BxnD0DRDBAi%3DGkDgiDlhjmYh2xuCllx7whD&alic…

Opencv学习项目2——pytesseract

上一次我们使用pytesseract.image_to_boxes来检测字符&#xff0c;今天我们使用pytesseract.image_to_data来检测文本并显示 实战教程 和上一次一样&#xff0c;添加opencv-python和pytesseract库 首先我们先来了解一下pytesseract.image_to_data pytesseract.image_to_data(…

无人值守工厂设备日志采集工具

免费试用下载: Gitee下载 最新版本 优势: A. 开箱即用. 解压直接运行.不需额外安装. B. 批管理设备. 设备配置均在后台管理. C. 无人值守 客户端自启动,自更新. D. 稳定安全. 架构简单,内存占用小,通过授权访问.

Exposure X7软件安装包下载 丨不限速下载丨亲测好用

根据使用者情况表明Exposure的设计鼓励您进行创造性的工作&#xff0c;使用涂刷和遮罩工具将效果有选择地应用于图片的特定区域&#xff0c;非破坏性图层使您能够混合预设和调整&#xff0c;以获得无尽的外观。我们都知道Exposure是用于创意照片编辑的最佳图片编辑器&#xff0…

【机器学习】使用Python实现图神经网络(GNN):图结构数据的分析与应用

&#x1f525; 个人主页&#xff1a;空白诗 文章目录 一、引言二、图神经网络的基础知识1. 图的基本概念和术语2. 传统的图分析方法3. 图神经网络的基本原理4. GNN的基本模型 三、主要的图神经网络模型1. 图卷积网络&#xff08;Graph Convolutional Network, GCN&#xff09;2…

086. 分隔链表

题目链接 一、题目描述 (一) 题目 给你一个链表的头节点 head 和一个特定值 x &#xff0c;请你对链表进行分隔&#xff0c;使得所有 小于 x 的节点都出现在 大于或等于 x 的节点之前。你应当保留两个分区中每个节点的初始相对位置。 (二) 示例 示例 1&#xff1a; 输入&a…

2024.6.16 机器学习周报

目录 引言 Abstract 文献阅读 1、题目 2、引言 3、创新点 4、匹配问题 5、SuperGlue架构 5.1、注意力图神经网络&#xff08;Attentional Graph Neural Network&#xff09; 5.2、最佳匹配层&#xff08;Optimal matching layer&#xff09; 5.3、损失 6、实验 6.…