自动补全插件input-autocomplete的使用

  • 前言
  • input-autocomplete的使用
    • 1.使用HBuilderX导入插件
    • 2.运行示例项目
    • 3.存在的问题
      • 1).数据过渡曝光
      • 2).数据过多页面拉长的问题
    • 4.解决问题
      • 1).问题一解决方案
      • 2).问题二解决方案

前言

上次使用uni-app开发的司机端总算告一段落了,接下来却开始了真正的噩梦。为什么这么说呢,因为这次开发的是企业管理端,开发内容和具体的业务逻辑都要比司机端要复杂的多,只能硬着头皮上啊,谁叫咱这么「优秀」呢?!o(╥﹏╥)o

我说过我是一个菜鸟,是真的!这不刚一上来就遇到了一个难题:后台登录页面的企业名称输入框有个自动补全的功能,像下图这样

咱也不怎么会vue啊,怎么办?第一时间想到去搜插件呗,在uniapp插件市场搜自动补全,如下图

先说一下我为什么选择第二个?

首先呢,第二个在下载|赞赏|收藏上人数都比较多;

其次呢,第二个样式好看些,我之前说过我是纯后端,前端的东西七窍通了六窍,唯有一窍不通o(╥﹏╥)o

input-autocomplete的使用

1.使用HBuilderX导入插件

一搬情况下我都是选择上面一种使用HBuilderX导入插件,但是为了演示本次效果,我们选择使用HBuilderX导入示例项目

导入成功之后就像下面这样

2.运行示例项目

我们来运行一下作者提供的测试项目,我们这里选择运行到小程序模拟器,在示例项目中我没有加载数据,我们首先看下使用静态数据的情况

3.存在的问题

1).数据过渡曝光

上面我们看到了,当输入框刚获取焦点就自动加载了所有的数据,这个在实际开发者是不合理的。就像我这次做的企业管理端,一个企业用户准备登录系统,刚准备输入自己的企业名称结果看到了平台上所有入驻的企业,这个就属于数据的过度曝光

2).数据过多页面拉长的问题

我们修改改变静态数据的方法,将数据增加几条,如下

methods: {changeStaticData() {console.log('改变静态数据');this.autocompleteStringList= ['1汉字行','1change data','1guang zhou',{//自定义数据对象必须要有text属性text: '1hello',//其它字段根据业务需要添加key: '1hello key'},'1不 行',{//自定义数据对象必须要有text属性text: '1我是静态数据',//其它字段根据业务需要添加id: '1hz'},'2input-autoComplete','3input-autoComplete','4input-autoComplete','5input-autoComplete','6input-autoComplete','7input-autoComplete','8input-autoComplete','9input-autoComplete','10input-autoComplete',];}}

然后我们再次运行项目,结果看下图

4.解决问题

1).问题一解决方案

针对上面提到的问题一:我们需要在文本获取焦点的时候判断是否输入了内容,然后根据输入的内容去搜索结果并显示就可以了

首先我们为控件设置最小匹配长度min(必须最少输入几个字符才开启自动补全)

其次我们修改源码的方法getData,当输入长度小于min的时候,不显示选择框

这样我们的第一个问题就解决了,效果如下:

2).问题二解决方案

这个相比较与第一个就显得简单的多了,我们直接定位到源码最底部的样式,找到下方选择框.str-auto-complete-container的样式,修改成如下

<style>.str-auto-complete-container {min-width: 15%;height: auto;border: 1px solid #f3f3f4;position: absolute;z-index: 9997;background: #fff;// 开启处置方向的滚动条overflow-y:auto;// 最少显示1条记录的空间min-height: 53rpx;// 最多显示10条记录的空间max-height: 530rpx;.str-auto-complete-item {position: relative;padding: 10upx;z-index: 9999;// 更改以下每条记录的字体大小font-size: 28rpx;}}
</style

再次运行该示例项目,运行结果如下

解决完以上两个问题,该插件基本就可以使用了。当然了如果大家还有别的需求可以去uni-app的插件市场向作者反馈,也可像我一样自己捯饬一下。

uni-app.07.自动补全插件input-autocomplete的使用相关推荐

  1. VSCode自动补全插件 path autocomplete

    使用VS Code 的时候,没有提示代码补全,使用此插件即可. 在插件市场中 搜索 "path autocomplete" 进行安装. 安装完成之后,在设置的 setting.ja ...

  2. Bootstrap typeahead自动补全插件的坑

    ##Bootstrap typeahead 插件的坑 typeahead 自动补全插件, 还是先简单记录一下,如何使用吧: <div class="form-group"&g ...

  3. 【Linux】Ubuntu 18下安装Vim自动补全插件YouCompleteMe(可高速下载安装)

    前言 本文写于2020年10月,如果你多年后看见这篇文章,方法可能已经失效,但是请牢记,尽量下载你所处时代的最新版本的软件,会减少很多麻烦. 摆正心态 即便按照本文操作,由于你的系统状态和我的不一样, ...

  4. linux自动补全命令插件,vim自动补全插件snipMate

    linux下安装vim自动补全插件snipMate 环境:ubuntu 下载snipMate 官方网站:http://www.vim.org/scripts/script.php?script_id= ...

  5. NovalIDE自动补全插件介绍。

    目前NovalIDE的自动补全插件已经更新到了1.2版本.版本支持的功能有: 1.支持Python脚本的补全,并且有相应的提示: 2.支持对其他语言脚本的补全. 以上两点可以获得类似付费的Sublim ...

  6. vim 自动补全插件YCM 安装 配置

    vim 自动补全插件YCM 安装 配置 报错 NoExtraConfDetected: No .ycm_extra_conf.py file detected, so no compile flags ...

  7. VSCode代码自动补全 - 插件篇

    VScode 不能自动补全结束标签?自动修改匹配的结束标签? 这里介绍一款vscode插件,只需要输入标签的单词或字母,按enter键,就能直接自动生成开/闭标签,且光标居中. 还有就是快捷方法的使用 ...

  8. vscode 自动补全插件

    这里写自定义目录标题 Path AutoComplete ------vscode英文版本自动补全插件 step1: 右下角找到齿轮图标,打开扩展插件栏 step2: step3: //导入文件时是否 ...

  9. VIM自动补全插件:deoplete

    Nvim用的是Shougo开发的NCM,但是在VIM 8+就要用同一个作者开发的Deoplete. 参考官网:Shougo/deoplete.nvim 注意:这里只讲怎么给vim8安装. 安装 第一步 ...

最新文章

  1. 小脚本,统计一个目录下满足特定条件文件的代码行数
  2. LINUX的20练习题
  3. 将一张表里的数据转换为json字符串
  4. MATLAB实战系列(二十七)-数据预处理-PCA主成分分析
  5. 离散数学及其应用 (Kenneth H·Rosen 著)
  6. 从上百幅架构图中学大型网站建设经验(上)
  7. 给定圆的半径r,求圆的面积。
  8. dataframe进行groupby后画图坐标轴刻度问题
  9. 骁龙820和KryoCPU:异构计算与定制计算的作用 【转】
  10. 以深圳.NET俱乐部名义 的技术交流会圆满成功
  11. python单击url下载网页文件_使用不带url的python脚本从网页下载文件,调用onClick函数 - javascript...
  12. 新华社专题报道|陕建集团:打造「建筑行业」数字化转型标杆
  13. mysql 查找多组数据结构_MySql主要索引数据结构
  14. unix oracle数据库启用,UNIX下ORACLE数据库的创建
  15. Uniapp消息推送配置各个厂商UniPush
  16. preg_match用法
  17. 多媒体中控系统的发展及现状
  18. 编辑器、编译器以及IDE
  19. 大数据技术就在生活中: 登机牌、阅卷与 Map-Reduce(归约)
  20. 怎样用html设置文档格式,Dreamweaver使用CSS样式表设置网页文本格式

热门文章

  1. 整理了一份招PHP高级工程师的面试题(转)
  2. [转载]Apache服务器配置全攻略(二)
  3. .net core 使用 iTextSharp 导入 Adobe Acrobat Pro 创建的PDF模板及生成表格,然后导出PDF
  4. RPC-client异步回调原理
  5. 如何选择安全可靠质量好的移动电源
  6. 服务器nmon文件位置,nmon以及nmon analyser教程
  7. android蓝牙连接133问题的解决办法---(连接篇)
  8. go语言新手liteide 出现错误
  9. matlab中node是什么意思,node-MATLAB 无线传感器节点定位技术的 的仿真,对与初学者具有一定的帮助! 238万源代码下载- www.pudn.com...
  10. 待我自由了,定要去旅行