时间:2021-05-18
结合了微信给的资料,马马虎虎摸索出了一些东西,下面说一下微信小程里序搜索历史功能的实现,下图是实现效果。
首先,定义历史记录的显示风格和方式,在下用的是列表模式,没有使用什么比较酷炫的套路。
<view wx:for="{{sercherStorage}}" wx:key="item.id"> <view class="liclass" style="color:#9E9E9E;border-bottom:0;font-size:26rpx;" id="{{item.id}}" bindtap="tapSercherStorage"> <text style="width:100rpx">{{item.name}}</text> </view></view>其次是“清除历史记录”按钮,个人建议在没有搜索历史的时候不显示按钮,因为在下有些强迫症
<view wx:if="{{sercherStorage.length!==0}}" style="text-align:center;" bindtap="clearSearchStorage"> <view class="history-span">清除历史记录</view></view>(微信小程序的数据交互还是蛮喜欢的)
这里是列表的CSS样式
.ddclass { position: absolute; width: 100%; margin-top: 10px; left: 0; } .liclass { font-size: 14px; line-height: 34px; color: #575757; height: 34px; display: block; padding-left: 18px; background-color: #fff; border-bottom: 1px solid #dbdbdb; }最后是一些JS控制
1、参数声明
data: { sercherStorage: [], StorageFlag: false //显示搜索记录标志位 }2、两个主要的JS方法
//清除缓存历史 clearSearchStorage: function () { wx.removeStorageSync('searchData') this.setData({ sercherStorage: [], StorageFlag: false, }) }, //打开历史记录列表 openLocationsercher: function () { this.setData({ sercherStorage: wx.getStorageSync('searchData') || [], StorageFlag: true, listFlag: true, }) }3、点击搜索添加搜索内容进历史记录
var self = this;if(self.data.search.length == 0){ return;}//控制搜索历史var self = this;if (this.data.search != '') { //将搜索记录更新到缓存 var searchData = self.data.sercherStorage; searchData.push({ id: searchData.length, name: self.data.search }) wx.setStorageSync('searchData', searchData); self.setData({ StorageFlag: false, })}4、在进入搜索页面时,检索出缓存中的搜索历史。(适用于搜索页面是单独页面的业务)
onLoad: function (options) { this.openLocationsercher(); }5、清空历史记录,只需在上面声明搜索按钮时把”bindtap”属性值设置成写好的JS方法名即可。
更多搜索功能实现的精彩文章,请点击专题:javascript搜索功能汇总 进行学习
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
wxSearch优雅的微信小程序搜索框一、功能支持自定义热门key支持搜索历史支持搜索建议支持搜索历史(记录)缓存二、使用1、将wxSearch文件夹整个拷贝到
本文实例为大家分享了微信小程序实现搜索历史效果的具体代码,供大家参考,具体内容如下实现目标代码实现集合wx.setStorageSync()和wx.getSto
在微信小程序项目中,开发模块涉及到手写签名功能,微信小程序canvas闪亮登场前言微信小程序canvas实现签名功能核心内容简介:(1)签名实现,开始,移动,结
本文实例讲述了微信小程序实现的一键复制功能。分享给大家供大家参考,具体如下:微信小程序不支持页面复制功能,故要实现某些信息的复制,需要开发复制功能微信小程序中复
【微信小程序如何制作】微信小程序如何渲染html格式的内容?如何制作微信小程序的历史组单选?下面就和小编一起来看看吧! 微信小程序如何渲染html格式的内