av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

vue輸入框使用模糊搜索功能的實現代碼

瀏覽:29日期:2023-01-18 15:41:53

實現原理:

利用js的 indexOf 方法可返回某個指定的字符串值在字符串中首次出現的位置。

模板中的代碼

<div class='search'><!--輸入框使用的是vant的輸入框組件--><van-search @input='autoSearch' v-model='value' placeholder='請輸入搜索關鍵詞' /> <span>搜索</span> </div><!--展示數據--><ulv-for='(item) in allArea' :key='item.communityId' > <li v-if='allNewArea.length != 0'>{{ item.communityName }}</li> <li v-else>{{ item.communityName }}</li></ul>

js代碼

getAreaDetail () { // 獲取數據 this.$http({ method: ’post’, url: ’/appProperty/getCommunity’, }).then(res => { this.allArea = res.data this.allNewArea = res.data }) }, autoSearch () { // 模糊搜索加節流(500ms觸發一次) var allowPass = true if (!allowPass) { return } setTimeout(() => { allowPass = false this.allArea = []; this.allNewArea.filter(item => { if (item.communityName.indexOf(this.value) !== -1) { // 此處也可使用js的 search 方法實現indexOf 一樣效果 this.allArea.push(item); } }) }, 500); },

拓展

節流函數 節省流量節省內存性能的一種函數,可以理解為是一種性能優化方案

//首先定義一個全局變量 當瀏覽器窗口大小發生變化也就是重新計算窗口大小的時候觸發 var canRun = true; window.onresize = function () { if (!canRun) { return } canRun = false//設置一個定時器進行輪詢操作 setTimeout(function () {//這是要做的事情 console.log('函數節流')//最后記得重新賦值true繼續讓他取反 canRun = true//每隔1000毫秒也就是1秒鐘就執行一次 }, 1000) }

防抖函數 當事件觸發完成之后再延遲觸發,并且只觸發一次;如果在觸發完成之前再次觸發,則會再次刷新延遲

//定義方法即要做的事情 function fun(){ console.log(’onresize’) }//定義事件觸發要執行的方法,兩個參數分別是傳入的要做的事情和定時器的毫秒數function debounce (fn, delay) {//定義一個變量作為等會清除對象 var handle;//這里用到了閉包,一個函數里面return另一個函數,變量相互牽引導致垃圾回收機制不會銷毀handle變量 return function () {//在這里一定要清除前面的定時器,然后創建一個新的定時器 clearTimeout(handle) //最后這個定時器只會執行一次也就是事件觸發完成之后延遲500毫秒再觸發(這里的變量賦值是跟定時器建立連接,進行地址賦值,一定要重新賦值給handle handle = setTimeout(function () { fn() }, delay) }}//給瀏覽器添加監聽事件resizewindow.addEventListener(’resize’, debounce(fun, 500));

兩者區別

防抖函數和節流函數都是用來提升性能優化及用戶體驗的一種方案; 防抖函數只會執行一次,且是最后觸發的那一次,而節流函數會規律性的執行多次;

總結

到此這篇關于vue輸入框使用模糊搜索功能的實現代碼的文章就介紹到這了,更多相關vue輸入框模糊搜索內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Vue
相關文章:
主站蜘蛛池模板: 久久久中文 | 天堂久久网 | 欧美三级在线 | 亚洲黄色av网站 | 黑人巨大精品 | 亚洲高清在线 | 亚洲欧美久久 | 免费a级毛片在线播放 | 男人的天堂亚洲 | 精品欧美一区二区精品久久 | 亚洲va欧美va天堂v国产综合 | 中文字幕黄色大片 | 午夜在线视频一区二区三区 | 久久尤物免费一区二区三区 | 免费看的黄网站 | 欧美一区二区三区在线播放 | 日韩免费视频一区二区 | 一道本不卡视频 | 午夜影院在线观看 | 超碰97人人人人人蜜桃 | 日韩一区三区 | av一区在线观看 | 中文字幕一区在线观看视频 | 国产精品一区三区 | 日韩成人在线视频 | 久久亚洲91 | 亚洲国产成人精品女人久久久 | 亚洲国产一区视频 | 亚洲精品888 | 一级片av| 亚洲高清在线 | 欧美日韩电影一区 | 精品视频一区二区三区 | 亚洲综合大片69999 | 久久国产高清 | 国产亚洲欧美在线 | 在线免费国产 | 日韩欧美三级电影 | 亚洲精品一区二区三区蜜桃久 | 涩爱av一区二区三区 | 亚洲一区二区三区在线视频 |