欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

vue+iview如何實現(xiàn)拼音、首字母、漢字模糊搜索

 更新時間:2022年04月02日 09:55:07   作者:池中飛雪  
這篇文章主要介紹了vue+iview如何實現(xiàn)拼音、首字母、漢字模糊搜索,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

最近項目做的后臺管理系統(tǒng)中,要求實現(xiàn)一個支持拼音、首字母和漢字模糊搜索的下拉框。項目是用vue+iview做的,iview中有select遠程搜索。但是,iview框架也有弊病就是會將輸入框中的輸入值進行過濾,如果你搜英文的,ok是可以實現(xiàn)的,看人家例子準備的數(shù)據(jù)也是英文的,但咱要求的是中文也能搜索,首字母和拼音都支持。

輸入中文,因為框架中是根據(jù)value取值的,所以你輸入的拼音和首字母在后臺返回的數(shù)據(jù)中是沒有的,所以就過濾掉了。后臺是支持模糊搜索的,搜索的數(shù)據(jù)也是可以返回的,但就是賦不上值。想了好多辦法都行不通,感覺這個框架有點雞肋,也不支持拼音首字母搜索,以為只有改源碼才能實現(xiàn)。后來終于想出了辦法,雖然有點麻煩,但只要能實現(xiàn)了就行,你說呢?

先看效果圖

支持漢字:

支持拼音:

支持首字母:

解決思路

在新建的頁面中:在遠程搜索的方法里,后臺返回的數(shù)據(jù)時給做下處理,把返回的value值后邊拼接一個特殊字符,再拼接上你輸入框輸入的值,這樣因為value里含有你輸入的值就不會被過濾掉,因而就能賦上值了。

校驗規(guī)則修改:如果有表單校驗,要在校驗時改變校驗規(guī)則type: 'string',因為拼接完就是字符串了。

submit提交方法中:在submit提交表單方法里再做下處理,把剛才拼接的字符串,用特殊字符處理成數(shù)組取第1位就是原來的value值了,不過是字符串形式了,要讓后臺接收字符串形式的。

編輯回顯頁面中:要讓后臺配合返回的id值是字符串形式,返回的下拉列表中每個數(shù)組對象的value值也是字符串形式的。如果后臺不改,只能自己再循環(huán)遍歷處理成字符串。

是不是說的一臉懵逼,直接上圖看的更清楚些:

頁面結(jié)構(gòu)

校驗規(guī)則

單選下拉框type是字符串,多選type要求是array類型

遠程搜索方法

這個地方單選框和多選框處理方法一樣

表單submit提交方法的傳參中

單選下拉框把選的v-model里的值(這里綁定的是value值)進行處理,把剛才拼接的特殊字符和輸入值去掉,取前面的id值

多選因為取到的v-model值是一個數(shù)組,所以要用map函數(shù)來把每一項都處理一下

以上就步驟就實現(xiàn)了拼音、首字母(不分大小寫)和漢字的搜索,但必須注意前提是需要后臺支持這些類型的搜索且能正確返回數(shù)據(jù)

因為我編輯和新建用的是同一個頁面所以還要編輯回顯數(shù)據(jù):

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue組件中props與data的結(jié)合使用方式

    vue組件中props與data的結(jié)合使用方式

    這篇文章主要介紹了vue組件中props與data的結(jié)合使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • vue2.0 中使用transition實現(xiàn)動畫效果使用心得

    vue2.0 中使用transition實現(xiàn)動畫效果使用心得

    這篇文章主要介紹了vue2.0 中使用transition實現(xiàn)動畫效果使用心得,本文通過案例知識給大家介紹的非常詳細,需要的朋友參考下吧
    2018-08-08
  • element el-table表格的二次封裝實現(xiàn)(附表格高度自適應(yīng))

    element el-table表格的二次封裝實現(xiàn)(附表格高度自適應(yīng))

    這篇文章主要介紹了element el-table表格的二次封裝實現(xiàn)(附表格高度自適應(yīng)),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • 從vue源碼看props的用法

    從vue源碼看props的用法

    平時寫vue的時候知道 props 有很多種用法,今天我們來看看vue內(nèi)部是怎么處理 props 中那么多的用法的。非常具有實用價值,需要的朋友可以參考下
    2019-01-01
  • vue生命周期和react生命周期對比【推薦】

    vue生命周期和react生命周期對比【推薦】

    本文通過實例代碼給大家介紹了vue生命周期和react生命周期對比 ,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下
    2018-09-09
  • 詳解Vuex的屬性

    詳解Vuex的屬性

    Vuex是專為Vue.js應(yīng)用程序開發(fā)的狀態(tài)管理模式,這篇文章主要介紹了Vuex的屬性,本文通過示例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-08-08
  • 詳解vue+webpack+express中間件接口使用

    詳解vue+webpack+express中間件接口使用

    這篇文章主要介紹了詳解vue+webpack+express中間件接口使用,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-07-07
  • vue移動端的左右滑動事件詳解

    vue移動端的左右滑動事件詳解

    這篇文章主要為大家詳細介紹了vue移動端的左右滑動事件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-06-06
  • Vue路由模式中的hash和history模式詳細介紹

    Vue路由模式中的hash和history模式詳細介紹

    VUE分為兩種路由模式分別是hash(哈希)和history,他們的區(qū)別是hash模式不會包含在http請求中,并且不會重新加載頁面,而使用history模式的話,如果前端的url和后端發(fā)起請求的url不一致的話,會報404錯誤,所以使用history模式的話我們需要和后端進行配合
    2022-09-09
  • vue-router-link選擇樣式設(shè)置方式

    vue-router-link選擇樣式設(shè)置方式

    這篇文章主要介紹了vue-router-link選擇樣式設(shè)置方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04

最新評論