最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

微信小程序?qū)崿F(xiàn)搜索功能

 更新時間:2020年03月10日 15:23:17   作者:舊城tk  
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)搜索功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

在頁面search.wxml中,定義一個input輸入框以及搜索的點擊按鈕,分別為它們綁定點擊事件handleInputChange()handleSearch()的事件,同時在它們的下面定義搜索的列表,代碼如下所示:

<view class="search-header">
 <input class="search-input" bindtap="handleInputChange" />
 <view class="search-btn" bindtap="handleSearch">搜索</view>
</view>

<view>
 <view wx:for="{{list}}" wx:key="{{index}}" class="item" id="{{item.id}}" bindtap="handleItemTap">
 <view>{{ item }}</view>
 <view class="item-message">{{ item.message }}</view>
 </view>
</view>

在邏輯文件search.js中,在data中存放list的數(shù)據(jù),為空數(shù)組,存放搜索列表的數(shù)據(jù),同時定義staticData,在里面定義inputValue,里面為空字符串,是input輸入框的值,代碼如下所示:

data: {
 list: []
},
staticData: {
 inputValue: ""
}

在search.js的onLoad()生命周期函數(shù)中,調(diào)用請求數(shù)據(jù)的函數(shù)getSearchResult(),這樣在一進入頁面的時候就會獲取到所有的數(shù)據(jù),不過由于并沒有關(guān)鍵字keyword,需要傳空字符串,代碼如下所示:

onLoad() {
 this.getSearchResult("");
 },
getSearchResult(keyword) {
 wx.request({
  url: 'xxxxxx',
  data: {
  keyword: this.staticData.inputValue
  },
  method: "POST",
  header: {
  'content-type': 'application/x-www-form-urlencoded' 
  },
  success: this.getSearchResultSucc.bind(this)
 })
},

在search.js中,定義一個響應(yīng)成功后的函數(shù)getSearchResultSucc(),判斷響應(yīng)的數(shù)據(jù)是否存在。如果存在通過this.setData()方法將響應(yīng)后的數(shù)據(jù)賦值給list,如果不存在,list仍然為空數(shù)組,代碼如下所示:

getSearchResultSucc(res) {
 // console.log(res)
 if (res.data.ret) {
  const result = res.data.data;
  this.setData({
  list: result
  })
 } else {
  this.setData({
  list: []
  })
 }
}

在search.js中,定義handleInputChange()函數(shù),這個函數(shù)也是input輸入框綁定的函數(shù),傳入事件對象e,然后通過e.detail.value賦值給staticData的inputValue,代碼如下所示:

handleInputChange(e) {
 this.staticData.inputValue = e.detail.value;
}

在search.js中,定義handleSearch()函數(shù),這個函數(shù)也是之前搜索按鈕所綁定的函數(shù),在這個里面重新發(fā)起一次請求,攜帶keyword關(guān)鍵字發(fā)起請求,代碼如下所示:

handleSearch (keyword) {
 this.getSearchResult(keyword)
}

如果想要點擊在搜索以后顯示的列表,可以在列表中綁定handleItemTap()事件,傳入事件對象e,通過 e.currentTaret.id去獲取到點擊的id,然后再通過 wx.navigateTo()方法跳轉(zhuǎn)到相應(yīng)的詳情頁,代碼如下所示:

handleItemTap(e) {
 wx.navigateTo({
  url: '/pages/detail/detail?id=' + e.currentTaret.id
 })
}

知識點補充:微信小程序云開發(fā)模糊查找功能實現(xiàn)

//連接數(shù)據(jù)庫
const db = wx.cloud.database()
var that = this
db.collection(‘newsname').where({
//使用正則查詢,實現(xiàn)對搜索的模糊查詢
_name: db.RegExp({
regexp: value,
//從搜索欄中獲取的value作為規(guī)則進行匹配。
options: ‘i',
//大小寫不區(qū)分
})
}).get({
success: res => {
console.log(res)
that.setData({
search_list: res.data
})
}
})

總結(jié)

到此這篇關(guān)于微信小程序?qū)崿F(xiàn)搜索功能的文章就介紹到這了,更多相關(guān)微信小程序搜索功能內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • JavaScript兼容瀏覽器FF/IE技巧

    JavaScript兼容瀏覽器FF/IE技巧

    本文給大家分享的是一個JavaScript兼容火狐瀏覽器與IE瀏覽器的一個小技巧,非常的簡單實用,有需要的小伙伴可以參考下
    2016-08-08
  • javascript實現(xiàn)簡單放大鏡效果

    javascript實現(xiàn)簡單放大鏡效果

    這篇文章主要為大家詳細介紹了javascript實現(xiàn)簡單放大鏡效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • JS將json字符串轉(zhuǎn)換為JsonObject的多種實現(xiàn)方法

    JS將json字符串轉(zhuǎn)換為JsonObject的多種實現(xiàn)方法

    在Web前端開發(fā)中,JSON(JavaScript Object Notation)作為數(shù)據(jù)交換格式被廣泛使用,它輕量級且易于人類閱讀和編寫,同時也易于機器解析和生成,當從服務(wù)器接收數(shù)據(jù)時,我們需要將其轉(zhuǎn)換為JSON對象以便于操作,本文將深入探討如何利用JavaScript實現(xiàn)這一轉(zhuǎn)換過程
    2025-02-02
  • JavaScript高階教程之“==”隱藏下的類型轉(zhuǎn)換

    JavaScript高階教程之“==”隱藏下的類型轉(zhuǎn)換

    這篇文章主要給大家介紹了關(guān)于JavaScript高階教程之“==”隱藏下類型轉(zhuǎn)換的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用JavaScript具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-04-04
  • js中鍵盤事件實例簡析

    js中鍵盤事件實例簡析

    這篇文章主要介紹了js中鍵盤事件,以一個較為簡單的實例形式分析了js響應(yīng)鍵盤事件的操作技巧,需要的朋友可以參考下
    2015-01-01
  • [js高手之路]原型式繼承與寄生式繼承詳解

    [js高手之路]原型式繼承與寄生式繼承詳解

    下面小編就為大家?guī)硪黄猍js高手之路]原型式繼承與寄生式繼承詳解。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • 真正好用的js驗證上傳文件大小的簡單方法

    真正好用的js驗證上傳文件大小的簡單方法

    下面小編就為大家?guī)硪黄嬲糜玫膉s驗證上傳文件大小的簡單方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-10-10
  • javascript父子通信

    javascript父子通信

    javascript父子通信...
    2007-05-05
  • JS的replace方法介紹

    JS的replace方法介紹

    replace() 方法的參數(shù) replacement 可以是函數(shù)而不是字符串。在這種情況下,每個匹配都調(diào)用該函數(shù),它返回的字符串將作為替換文本使用
    2012-10-10
  • javascript 連連看代碼出爐

    javascript 連連看代碼出爐

    非常不錯的連連看實現(xiàn)代碼,大家可以運行下,看下效果。
    2009-06-06

最新評論

黄浦区| 龙川县| 天等县| 韩城市| 吴旗县| 奉新县| 曲周县| 且末县| 莱芜市| 宜川县| 双鸭山市| 淮安市| 平利县| 农安县| 四川省| 曲沃县| 大兴区| 长子县| 秀山| 章丘市| 电白县| 佛坪县| 通山县| 玉林市| 闸北区| 沙湾县| 江口县| 纳雍县| 永春县| 安达市| 淮滨县| 成安县| 长沙县| 阜新| 昂仁县| 什邡市| 南和县| 宁远县| 精河县| 清原| 台山市|