上周又又又又加需求了,好吧,bring it on
先讲需求目标要实现功能
- focus的时候要出历史搜索(要存缓存)
- 历史搜索下部出现清除缓存按钮
- input的时候要根据后台返回出提词
elementui中比较能用的上就是 el-autocomplete 这个组件,但是呢,组件中要添加清除按钮,这个是比较麻烦的。因为,el-autocomplete 这个东西的slot是写弹框的每一项,而不是弹框整体,所以,这里我是把清空缓存的按钮作为一个选项push到提词数组之中的,然后再对该项进行样式处理;其次根据输入匹配提词,用的会是watch检测,而不是input或change事件
先上html部分
<
值得注意的是要为 el-autocomplete 组件设定ref,因为我们不会设置change事件,所以需要手动收起弹框
然后是js部分
querySearch
此处要判断是否已输入过词语,没有则显示缓存词,有则显示提词,按下选词会触发关闭弹框事件
关闭弹框事件
goSearch
上成品
希望大家多多点赞,留言,关注!
elementUi简单实现搜索提词功能 - 个人文章 - SegmentFault 思否segmentfault.com