這期內容當中小編將會給大家帶來有關怎么在微信小程序中實現一個搜索歷史功能,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
首先,定義歷史記錄的顯示風格和方式
<view wx:for="{{sercherStorage}}" wx:key="item.id">
<view class="liclass" id="{{item.id}}" bindtap="tapSercherStorage">
<text >{{item.name}}</text>
</view>
</view>其次是“清除歷史記錄”按鈕,個人建議在沒有搜索歷史的時候不顯示按鈕,因為在下有些強迫癥
<view wx:if="{{sercherStorage.length!==0}}" 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();
}上述就是小編為大家分享的怎么在微信小程序中實現一個搜索歷史功能了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。