element-ui autocomplete 组件源码分享

紧接着 input 组件的源码,分享带输入建议的 autocomplete 组件,在 element-ui 官方文档上,没有这个组件的 api 目录,它的 api 是和 input 组件的 api 在一起的,看完源码之后发现,源码当中 autocomplete 组件是一个单独的组件,进而在此做单独的简单分享。主要从以下五个方面来分享。

1、autocomplete 组件的页面结构。

2、autocomplete 组件的属性。

3、autocomplete 组件的 slot。

4、autocomplete 组件的事件。

5、autocomplete 组件的方法。

一、autocomplete 组件的页面结构

二、autocomplete 组件的属性

2.1 placeholder 属性,输入框占位文本,类型 string,无默认值。

2.2 disabled 属性,禁用,类型 boolean,默认 false。

2.3 value-key 属性,输入建议对象中用于显示的键名,类型 string,默认 value。

2.4 value 属性,必填值,输入绑定值,类型 string,无默认值。

2.5 debounce 属性,获取输入建议的去抖延时,类型 number,默认 300。

2.6 placement 属性,菜单弹出的位置,类型 string,top / top-start / top-end / bottom / bottom-start / bottom-end,默认 bottom-start。

2.7 fetch-suggestions 属性,返回输入建议的方法,仅当你的输入建议数据 resolve 时,通过调用 callback(data:[]) 来返回它,类型 Function(queryString, callback),无默认值。

fetchSuggestions  函数的小结:

1、子组件通过 props 接收父组件传递过来的 fetchSuggestions 函数。

2、子组件内部调用父组件传递过来的 fetchSuggestions 方法,并给这个方法传递两个参数,一个是当前查询的字符串,一个是回调函数。

3、父组件中的 querySearch 方法被调用,处理查询字符串,并用过回调函数返回结构给子组件。

4、子组件在回调函数中接收福咱们返回的数据,并据此更新状态或执行其他操作。

这种传值方式使得父组件和子组件之间以一种相对解耦的方式进行通信,父组件提供数据检索逻辑,子组件负责触发检索并处理检索结果。

2.8 popper-class 属性,Autocomplete 下拉列表的类名,类型 string,无默认值。

2.9 trigger-on-focus 属性,是否在输入框 focus 时显示建议列表,类型 boolean,默认 true。

2.10 name 属性,原生属性,类型 string,无默认值。

2.11 select-when-unmatched 属性,在输入没有任何匹配建议的情况下,按下回车是否触发 select 事件,类型 boolean,默认 false。

2.12 label 属性,输入框关联的label文字,类型 string,无默认值。

2.13 prefix-icon 属性,输入框头部图标,类型 string,无默认值。

2.14 suffix-icon 属性,输入框尾部图标,类型 string,无默认值。

2.15 hide-loading 属性,是否隐藏远程加载时的加载图标,类型 boolean,默认 false。

2.16 popper-append-to-body 属性,是否将下拉列表插入至 body 元素。在下拉列表的定位出现问题时,可将该属性设置为 false,类型 boolean,默认 true。

2.17 highlight-first-item 属性,是否默认突出显示远程搜索建议中的第一项,类型 boolean,默认 false。

三、autocomplete 组件的 slot

3.1 prefix,输入框头部内容。

3.2 suffix,输入框尾部内容。

3.3 prepend,输入框前置内容。

3.4 append,输入框后置内容。

四、autocomplete 组件的事件

4.1 select,点击选中建议项时触发,选中建议项。

4.2 change,input值改变时触发,(value: string | number)。

五、autocomplete 组件的方法

5.1 focus,使 input 获取焦点。

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

Linux部分命令

目录 1.文件介绍 2.ls命令 3.目录命令 4.相对路径以及绝对路径 5.命令创建目录(文件夹) 6.which命令 7.find命令 8.grep命令 9.wc命令 10.echo、tail、重定向符 1.文件介绍 和window不同,Linux没有盘路径,所有的文件都存…

Linux部署Kafka2.8.1

安装Jdk 首先确保你的机器上安装了Jdk,Kafka需要Java运行环境,低版本的Kafka还需要Zookeeper,我此次要安装的Kafka版本为2.8.1,已经内置了一个Zookeeper环境,所以我们可以不部署Zookeeper直接使用。 1、解压Jdk包 t…

OSPF GTSM(通用TTL安全保护机制)

目录 GTSM的定义 使用GTSM的目的 GTSM的原理 配置OSPF GTSM实例 组网需求 配置思路 操作步骤 1. 配置各接口的IP地址 2.配置OSPF基本功能 3.配置OSPF GTSM 4. 验证配置结果 GTSM的定义 GTSM(Generalized TTL Security Mechanism),…

1.Mysql基础入门—MySQL-mysql 8.0.11安装教程

1.Mysql基础入门—MySQL-mysql 8.0.11安装教程 摘要个人简介下载Mysql安装Mysql配置环境变量 摘要 MySQL 8.0.11的安装过程涉及几个关键步骤,首先访问MySQL官方网站下载页面,选择操作系统相对应的MySQL版本进行下载。对于Windows用户,启动下…

element-ui inputNumber 组件源码分享

今日简单分享 inputNumber 组件的实现原理,主要从以下四个方面来分享: 1、inputNumber 组件的页面结构 2、inputNumber 组件的属性 3、inputNumber 组件的事件 4、inputNumber 组件的方法 一、inputNumber 组件的页面结构。 二、inputNumber 组件的…

【动手学深度学习-pytorch】-9.3深度循环神经网络

到目前为止,我们只讨论了具有一个单向隐藏层的循环神经网络。 其中,隐变量和观测值与具体的函数形式的交互方式是相当随意的。 只要交互类型建模具有足够的灵活性,这就不是一个大问题。 然而,对一个单层来说,这可能具有…

霸榜京东数据库图书热卖榜!《图数据库:理论与实践》热销中

《图数据库:理论与实践》自2月上市以来,受到了数据库行业的广泛关注与热烈支持,问世两周便销量破千本!近期还荣登京东 “数据库图书榜”热卖榜第二名,广获好评! 在此,真挚的感谢各位读者的认可…

IP地址暴露可能带来的风险和危害

当自己的IP地址暴露时,可能会面临一系列的风险和潜在危害。IP地址作为互联网上连接用户与网络设备的标识符,其安全性对于个人信息安全至关重要。以下将详细探讨IP地址暴露可能带来的后果,并提出相应的防范措施。 首先,IP地址暴露可…

docker logs 查找日志常用命令

docker logs 是什么 docker logs 是 Docker 命令行工具提供的一个命令,用于查看容器的日志输出。它可以显示容器在运行过程中生成的标准输出(stdout)和标准错误输出(stderr),帮助用户诊断容器的行为和排查…

LVS几种模式介绍

备注:这篇真的是水文,不看也罢。 LVS,linux virtual server,可提供IP网络层的负载均衡。 其主要模式主要有以下几种: LVS-NAT 主要通过网络地址转换,修改目的IP实现。Network Address Translation LVS-…

关于Oracle VM VirtualBox无法查询IP地址的原因

1.如下,输入ifconfig却没有显示我框住的显示IP。 2.原因有可能: (1)主机没连上网络。 (2)虚拟机网络设置不正确。

bugku-web-你必须让他停下

这里在不停的刷新 页面源码 开发脚本截取同样效果 利用抓包工具将其请求与得到的数据全部记录下来 发现只有10.jpg可以被正常加载出来 将其图片打开 发现没有flag 再将其转化为txt文件 同样不对 这时回到抓包处 查看请求10.jpg文件的报文 得到flag

公司服务器被.rmallox攻击了如何挽救数据?

公司服务器被.rmallox攻击了如何挽救数据? .rmallox这种病毒与之前的勒索病毒变种有何不同?它有哪些新的特点或功能? .rmallox勒索病毒与之前的勒索病毒变种相比,具有一些新的特点和功能。这种病毒主要利用加密技术来威胁用户&am…

HarmonyOS 应用开发之ExtensionAbility组件

ExtensionAbility组件是基于特定场景(例如服务卡片、输入法等)提供的应用组件,以便满足更多的使用场景。 每一个具体场景对应一个 ExtensionAbilityType,开发者只能使用(包括实现和访问)系统已定义的类型。…

什么是广告可见性测量 如何测量广告可见性

广告可见性测量 & 如何测量广告可见性 --- 一起来来认识MOAT 现在是2024年,大家或许还记得大约8年前广告可见性(Ad viewability)成为数字媒体世界的一种货币以来,出版商一直处于不利地位。当广告商用不同的工具和技术武装自…

千川素材投放效果追踪与精准识别:从数据洞察到策略优化的全面跃升

一、数据驱动的投放效果追踪在数字化营销时代,数据的力量不可忽视。对于广告主而言,投放效果追踪不仅是对广告效果的简单度量,更是对市场反应、用户行为和广告策略的深入分析。通过数据驱动的投放效果追踪,广告主可以更加精准地了…

axi4资料

System-on-Chip bus: AXI4 simplified and explained AXI Protocol Overview

视频无水印爬虫采集工具|抖音视频批量下载软件|可导出视频分享链接

全新视频无水印爬虫采集工具,助力您快速获取所需视频! 视频无水印爬虫采集工具,为用户提供了强大的视频采集和下载功能。它可以批量提取关键词相关的视频,同时支持单独视频的提取和下载,操作简便,使用方便。…

在视频号上开小店,这些细节内容你知道吗?过来人经验分享!

大家好,我是电商小布。 现在有越来越多的小伙伴,看到了视频号小店的内部的发展机会,纷纷想要加入这个市场。 但是不了解这个项目,在开店运营的时候都是无处下手的。 这其中的一些细节内容一定要提前的了解清楚。 接下来&#…

基于Hive的天气情况大数据分析系统(通过hive进行大数据分析将分析的数据通过sqoop导入到mysql,通过Django基于mysql的数据做可视化)

基于Hive的天气情况大数据分析系统(通过hive进行大数据分析将分析的数据通过sqoop导入到mysql,通过Django基于mysql的数据做可视化) Hive介绍: Hive是建立在Hadoop之上的数据仓库基础架构,它提供了类似于SQL的语言&…