位置: IT常识 - 正文

Vue前端:几种搜索框功能实现(vue.js前端)

编辑:rootadmin
Vue前端:几种搜索框功能实现 Vue前端:几种搜索框功能实现前言一、搜索框输入内容自动检索(1)检索到输入新的内容后,就自动向后端发送查找请求(即时搜索)(2)一次请求搜索到所有可能需要的数据,然后根据搜索框中的内容进行数据过滤二、点击搜索按钮再开始搜索总结前言

推荐整理分享Vue前端:几种搜索框功能实现(vue.js前端),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:vue前端开发工具,vue前端开发工具,vue前端菜鸟教程,vue前端代码实例,vue前端项目实战,vue前端搜索,vue前端页面查询功能怎么实现,vue前端搜索,内容如对您有帮助,希望把文章链接给更多的朋友!

相信很多朋友遇到需要在网页上增加一个搜索框的功能,本文简单介绍两种搜索框的实现。 搜索框的功能一般分为: (1)即时检索,即搜索框输入内容自动检索,会随着搜索内容的不断输入,改变界面的显示 (2)点击搜索按钮再开始搜索

以下分别介绍这两种搜索框的简单实现方式。

一、搜索框输入内容自动检索

实现搜索框输入内容自动检索功能,可以再分为两种情况实现。

(1)检索到输入新的内容后,就自动向后端发送查找请求(即时搜索)

这种设计,类似于现在的百度搜索,就是在搜索框输入一段内容后,会自动发起一次查找数据请求,界面自然就显示新的内容。 优点: 这种设计会显的很智能,不需要点搜索框即可检索,搜索起来更加快速高效,使用起来更加跟手。 缺点: 1)需要搜索的内容可能是一部分一部分输入的,每次搜索框新增内容就去搜索,往往不能得到真正想要的结果; 2)如果分段输入搜索内容的次数过多,会导致请求服务器响应的次数过多,一个用户在完成一次有效的检索过程中,可能需要多次的请求服务器响应,服务器性能、网络资源等会被严重浪费,同时使用用户过多可能导致服务器响应较慢,严重会导致服务器崩溃。

需要注意: 即时检索在使用的时候为了不浪费过多资源,往往需要限制发请求的时间或者需要搜索的内容量,即每过一段时间或需要搜索的内容量达到一定条件才发送请求。

Vue前端:几种搜索框功能实现(vue.js前端)

以下内容来自: input搜索框实时检索功能实现

参考代码:

methods: { //使用_.debounce控制搜索的触发频率 //准备搜索 search: _.debounce( function () { let that = this; //删除已经结束的请求 _.remove(sources, function (n) { return n.source === null; }); //取消还未结束的请求 sources.forEach(function (item) { if (item !== null && item.source !== null && item.status === 1) { item.status = 0; item.source.cancel('取消上一个') } }); //创建新的请求cancelToken,并设置状态请求中 var sc = { source: axios.CancelToken.source(), status: 1 //状态1:请求中,0:取消中 }; //这个对象加入数组中 sources.push(sc); //开始搜索数据,yourhttp替换成你自己的请求路径 axios.get('yourhttp', { cancelToken: sc.source.token }).then(function (res) { //请求成功 sc.source = null; //置空请求canceltoken //TODO这里处理搜索结果 console.log(res.data); that.result = res.data; }).catch(function (thrown) { //请求失败 sc.source = null; //置空请求canceltoken //下面的逻辑其实测试用 if (axios.isCancel(thrown)) { console.log('Request canceled', thrown.message); } else { //handle error } }); }, 500 //空闲时间间隔设置500ms )}(2)一次请求搜索到所有可能需要的数据,然后根据搜索框中的内容进行数据过滤

如果: 1)搜索框的内容相对固定,不像百度等网站需要对不同的搜索内容进行兼容,数据库整体数据量也不是很大 2)服务器性能有限,希望尽量减少请求服务器响应次数

我们可以采用一次请求搜索到所有可能需要的数据,然后根据搜索框中的内容进行数据过滤,显示需要的数据 为了实现这个效果,我们可以使用Vue的Filter函数进行数据的过滤。过滤器整体分为局部过滤器和全局过滤器。

过滤器具体实现可以参考以下链接: Vue.js中过滤器(filter)的使用

我这里再介绍一种过滤器的使用,是我目前在使用的方式,这种方式和链接中的使用方式不太相同,相对简单直接,看起来也很好懂,还能实现多页面的切换功能。 话不多说上代码!

result_Lists() { let start = (this.pageNo - 1) * this.pageSize; //定义显示的第一条数据编号 let end = start + this.pageSize;//根据起始编号和每页规定的显示数量,定义显示的最后条数据编号 //返回经过过滤的数据 return this.result.filter(item => (item.content && item.content.includes(this.searchContent)) ).slice(start, end); //简单介绍slice(start,end): //方法可从已有数组中返回选定的元素,返回一个新数组,包含从start到end(不包含该元素)的数组元素。}

这种实现方式呢,我个人认为更加简单直接,很好懂,还能很好的配合多页面的切换,根据页面定义的每页显示的数据条数可以自动切换需要显示的数据数量。

二、点击搜索按钮再开始搜索

点击搜索按钮再开始搜索应该是最常见、最普通、最简单的一种搜索方式。给搜索按钮绑定事件,点击搜索后向后端发请求,前端根据后端返回值在页面显示即可,这里不再赘述。

Vue前后端交互链接: 三、vue前后端交互(轻松入门vue)

总结

本文介绍了几种搜索框常见的实现方式,特别推荐的是我在用的过滤器使用方式,实测很好用,很简单。 希望对大家有用!

本文链接地址:https://www.jiuchutong.com/zhishi/283949.html 转载请保留说明!

上一篇:noads.exe - noads是什么进程 有什么用

下一篇:KB5005322某些设备在安装 KB5003214和 KB5003690后无法安装新更新(此设备某些文件可能存在问题)

  • 腾讯游戏平台面板中显示的游戏不全,怎么办(腾讯游戏网站平台)

    腾讯游戏平台面板中显示的游戏不全,怎么办(腾讯游戏网站平台)

  • 手机号码挂失后他人还能用吗(手机号码挂失后多久会注销)

    手机号码挂失后他人还能用吗(手机号码挂失后多久会注销)

  • 华为荣耀手环4和5有什么区别(华为荣耀手环4怎么充电)

    华为荣耀手环4和5有什么区别(华为荣耀手环4怎么充电)

  • 小米8关闭内容中心(小米关闭内容资讯)

    小米8关闭内容中心(小米关闭内容资讯)

  • 微信可以传文件夹吗(微信可以传文件给其他人吗)

    微信可以传文件夹吗(微信可以传文件给其他人吗)

  • 虎牙粉丝牌子怎么弄(虎牙粉丝牌在哪)

    虎牙粉丝牌子怎么弄(虎牙粉丝牌在哪)

  • 虚拟机对电脑有坏处(虚拟机电脑有哪些)

    虚拟机对电脑有坏处(虚拟机电脑有哪些)

  • 钉钉直播回放标黄是什么意思(钉钉直播回放进度条乱动)

    钉钉直播回放标黄是什么意思(钉钉直播回放进度条乱动)

  • 拼多多换主图技巧(拼多多更换主图)

    拼多多换主图技巧(拼多多更换主图)

  • 标签已失效怎么处理(标签已失效怎么办)

    标签已失效怎么处理(标签已失效怎么办)

  • 西瓜视频可以改认证领域吗(西瓜视频可以改变声道吗)

    西瓜视频可以改认证领域吗(西瓜视频可以改变声道吗)

  • 抖音怎样把喜欢的作品删除掉(抖音怎样把喜欢隐藏)

    抖音怎样把喜欢的作品删除掉(抖音怎样把喜欢隐藏)

  • 支付宝能ipad手机同时在线吗(ipad支付宝可以跟手机同步登陆吗)

    支付宝能ipad手机同时在线吗(ipad支付宝可以跟手机同步登陆吗)

  • word怎么画线条(word怎么画线条写字)

    word怎么画线条(word怎么画线条写字)

  • iphone11发热严重怎么解决(iphone11发热严重耗电快)

    iphone11发热严重怎么解决(iphone11发热严重耗电快)

  • word怎么一次删除多页(word怎么一键删除表格内容)

    word怎么一次删除多页(word怎么一键删除表格内容)

  • 华为p20耳机插上没反应(华为p20耳机插上没声音)

    华为p20耳机插上没反应(华为p20耳机插上没声音)

  • 手机怎样查看qq特别关心(手机怎样查看qq撤回的图片)

    手机怎样查看qq特别关心(手机怎样查看qq撤回的图片)

  • 京东退货钱会退回微信吗(京东退货钱会退回微信需要多久)

    京东退货钱会退回微信吗(京东退货钱会退回微信需要多久)

  • 苹果手机怎么设置小爱(苹果手机怎么设置铃声来电铃声)

    苹果手机怎么设置小爱(苹果手机怎么设置铃声来电铃声)

  • 微信微云文件在哪(微信云文件夹)

    微信微云文件在哪(微信云文件夹)

  • 华为4手环上市时间(华为手环上市时间)

    华为4手环上市时间(华为手环上市时间)

  • 麒麟990性能(麒麟990性能模式提升大吗)

    麒麟990性能(麒麟990性能模式提升大吗)

  • 设置数据系列格式在哪里(设置数据系列格式系列重叠)

    设置数据系列格式在哪里(设置数据系列格式系列重叠)

  • b站粉丝勋章怎么升级快(B站粉丝勋章怎么去掉)

    b站粉丝勋章怎么升级快(B站粉丝勋章怎么去掉)

  • 手机卡是怎么回事(手机卡是怎么回事呀手机里面抖音卡是怎么回事啊)

    手机卡是怎么回事(手机卡是怎么回事呀手机里面抖音卡是怎么回事啊)

  • NTFS文件夹权限使用说明(ntfs文件夹权限高于文件权限)

    NTFS文件夹权限使用说明(ntfs文件夹权限高于文件权限)

  • Vue3 + PDF.js 实现 PDF 预览(vue实现pdf下载)

    Vue3 + PDF.js 实现 PDF 预览(vue实现pdf下载)

  • 前端Docker部署方案(docker部署webdav)

    前端Docker部署方案(docker部署webdav)

  • 读懂增值税
  • 增值税发票进销项不一致
  • 预缴增值税的账务
  • 只有费用没有收入成本怎么填所得税
  • 购车保险返现如何做会计凭证
  • 预付押金是否可以作为成本
  • 职工罚款收入计入什么科目
  • 资产负债表中其他流动资产包括哪些科目
  • 外贸企业出口销售通常采用
  • 其他应付款计入资本公积
  • 不是本单位职工可以报销差旅费吗
  • 暂估应付账款借方余额
  • 未确认融资费用借贷方向
  • 退货开负数发票的情况该如何做会计处理?
  • 开的是全额发票但是有分包如何做账务处理?
  • 免税农产品转出进项税税率
  • 纳税总额包括代扣代缴个人所得税吗
  • 预缴企业所得税怎么算
  • 混合销售举例说明
  • 金融服务收入如何做账
  • 银行定期存款的利息是每个月给你吗
  • 待抵扣进项税额转出会计分录
  • 关于积分的三种账务处理方法
  • 笔记本电池保养注意事项
  • 运杂费计入什么科目
  • 外贸公司要计提什么费用
  • 腾讯手游助手如何退出登录
  • 升级鸿蒙系统会解除限制充电60
  • fast processing
  • w10的蜘蛛纸牌
  • win10关闭自动更新方法永久
  • 银行存款收款凭证属于什么凭证
  • php根据日期判断星座
  • php教程100
  • 融资性售后回租承租方为什么不交税
  • 安装虚拟windows
  • php微信公众号开发反回图片怎么弄的学校
  • 资产负债表日后调整事项
  • phpweb缓存技术
  • 广告片影视公司
  • 充话费如何开公司发票
  • 银行利息的收入计入什么科目
  • 固定资产清理需要交企业所得税吗
  • 基本运算符号有乘方吗
  • 退诉讼费计入什么科目
  • 套期保值是什么意思举个例子
  • 微店企业店铺和个人店铺的区别
  • 其他应收款财务报表取数
  • 政府会计制度应收账款坏账准备
  • 增值税期末留抵退税
  • 研发费用加计扣除新税收政策
  • 其他应收款审计说明怎么写
  • 计提职工薪酬是什么意思
  • 如何解决私账流失问题
  • 企业所得税审计调整分录
  • 合同负债包括
  • 一年的系统服务费多少钱
  • 企业未按照规定报送年度报告怎么办
  • 代收第三方补偿什么意思
  • 购买材料如何计提折旧
  • 买车能不交税吗
  • 电子发票是否使用
  • 医院收费单可以当发票吗
  • 员工用自己的钱买的材料如何做账
  • 新建工业企业要考虑到什么
  • win7 64位系统关机按钮不见了怎么找回 win7关机按钮设置步骤
  • macbookzen
  • windows软件包2012能删吗
  • drivemgr.exe 病毒介绍
  • linux jre
  • win10如何恢复已删除的密钥
  • win10文件夹右上角搜索不能用
  • Android游戏开发读后感
  • cocos creator特效制作
  • Eclipse引入jdk1.8
  • 只指定行网络什么意思
  • Android---59---Toast的使用
  • python设计教程
  • 滴滴发票怎么查行程
  • 代扣社保代扣公式是什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设