微信小程序搜索关键词高亮怎么实现
发表于:2025-02-01 作者:千家信息网编辑
千家信息网最后更新 2025年02月01日,本篇内容介绍了"微信小程序搜索关键词高亮怎么实现"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!项目中
千家信息网最后更新 2025年02月01日微信小程序搜索关键词高亮怎么实现
本篇内容介绍了"微信小程序搜索关键词高亮怎么实现"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
项目中碰到一个需求,微信小程序搜索数据并且关键词要高亮显示,接到需求,马上开干。先上效果图。
2,思路
博主第一时间想到的就是使用split,根据搜索的关键词,处理后台返回的数据,然后indexOf找到关键字,给每个字添加deep字段,deep为true,则高亮,为false,则正常。由于是小程序,所以楼主直接做成了一个高亮组件,代码很简单,实现步骤如下。
3,代码逻辑
模拟数据如下
list:[ '武汉大学', '华中科技大学', '华中师范大学', '中南财经政法大学', '中国地质大学', '武汉理工大学', '华中农业大学', '武汉科技大学',],
在data中定义了一个空数组,用于存放根据搜索key过滤后的数据
filterList:[],//过滤后的
搜索的wxml和方法
// wxml// 搜索方法searchValue(e){ let val = e.detail.value; this.setData({ value:val }) if(val.length > 0){ this.setData({ filterList:[] }) let arr = []; for(let i = 0;i < this.data.list.length;i++){ if(this.data.list[i].indexOf(val) > -1){ arr.push(this.data.list[i]) } } this.setData({ filterList: arr }) }else{ this.setData({ filterList: [] }) }}
定义了一个高亮组件highlight
"usingComponents": { "highlight":"../../components/highlight/highlight" }
在页面中将搜索出来的每一项item和key参数传递给组件
在组件中接收
properties: { text:String, key:{ type:String, value:'', observer:'_changeText' }}
组件的初始数据
data: { highlightList:[],//处理后的数据}
组件的wxml
{{ item.val }}
组件的高亮数据处理
// 非空过滤 _changeText(e){ if(e.length > 0 && this.properties.text.indexOf(e) > -1){ this._filterHighlight(this.properties.text, e); } }, /** * 关键字高亮处理 * @param { String } text - 文本 * @param { String } key - 关键字 */ _filterHighlight(text, key){ let textList = text.split(""); let keyList = key.split(""); let list = []; for(let i = 0;i < textList.length;i++){ let obj = { deep:false, val:textList[i] } list.push(obj); }; for(let k = 0;k < keyList.length;k++){ list.forEach(item => { if(item.val === keyList[k]){ item.deep = true; } }) } this.setData({ highlightList:list }) }
"微信小程序搜索关键词高亮怎么实现"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
高亮
搜索
大学
关键
数据
组件
关键词
程序
处理
关键字
华中
武汉
代码
内容
方法
更多
知识
科技
需求
学有所成
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
证券公司网络技术服务
网络技术职业兴趣怎么写
服务器电源模块灯一直闪
wps 导入数据库
怎么爬取客户端数据库
Ibm服务器带内管理
违反网络安全法第四十七
重构数据库psv会发生什么
关于网络安全防范措施
端端软件开发
滨州陶瓷软件开发公司
软件开发价格明细
涡阳租房网络安全
怎么进英雄联盟云顶之巅服务器
手机3d扫描软件开发
湖南郴州软件开发工程师学费多少
安徽达光网络技术有限公司
惠州教育软件开发收费
数据库原理的精髓
内网网络安全培训
网络安全国际会议主题发言
怀旧服哪个服务器省钱
网络安全公安局给我打电话
网络安全与法学人才培养
江苏敏捷软件开发服务
标定与软件开发工作流程
广西网络技术专科哪个好
直接在数据库表中设置外键
四川大学网络安全研究院
情侣购物软件开发