亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

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

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

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

先看效果圖

支持漢字:

支持拼音:

支持首字母:

解決思路

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

校驗(yàn)規(guī)則修改:如果有表單校驗(yàn),要在校驗(yàn)時改變校驗(yàn)規(guī)則type: 'string',因?yàn)槠唇油昃褪亲址恕?/p>

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

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

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

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

校驗(yàn)規(guī)則

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

遠(yuǎn)程搜索方法

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

表單submit提交方法的傳參中

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

多選因?yàn)槿〉降膙-model值是一個數(shù)組,所以要用map函數(shù)來把每一項都處理一下

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

因?yàn)槲揖庉嫼托陆ㄓ玫氖峭粋€頁面所以還要編輯回顯數(shù)據(jù):

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

相關(guān)文章

  • Vue3之路由跳轉(zhuǎn)與參數(shù)獲取方式

    Vue3之路由跳轉(zhuǎn)與參數(shù)獲取方式

    這篇文章主要介紹了Vue3之路由跳轉(zhuǎn)與參數(shù)獲取方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • vue?當(dāng)中組件之間共享數(shù)據(jù)的實(shí)現(xiàn)方式

    vue?當(dāng)中組件之間共享數(shù)據(jù)的實(shí)現(xiàn)方式

    這篇文章主要介紹了vue?當(dāng)中組件之間共享數(shù)據(jù)的實(shí)現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • 利用report分析vue項目中各文件大小

    利用report分析vue項目中各文件大小

    這篇文章主要介紹了利用report分析vue項目中各文件大小問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-06-06
  • Vue3+ElementPlus封裝圖片空間組件的門面實(shí)例

    Vue3+ElementPlus封裝圖片空間組件的門面實(shí)例

    圖片空間是用于管理上傳圖片的工具,可以讓用戶方便地存儲、管理和調(diào)用圖片,提高工作效率,它通常具備多樣的樣式,但操作入口統(tǒng)一,便于使用,通過圖片空間組件,用戶能直接在其他模塊(例如商品圖片)中選擇所需圖片
    2024-09-09
  • MVVM模型在Vue中的使用詳解

    MVVM模型在Vue中的使用詳解

    MVVM模型主要是為了分離視圖(View)和模型(Model),其優(yōu)點(diǎn)為:低耦合、可重用性、獨(dú)立開發(fā)以及可測試,視圖和模型分離的特點(diǎn)給了 Vue 很大的啟發(fā),這篇文章主要介紹了MVVM模型在Vue中的使用,需要的朋友可以參考下
    2022-11-11
  • 詳解Vue依賴收集引發(fā)的問題

    詳解Vue依賴收集引發(fā)的問題

    這篇文章主要介紹了Vue依賴收集引發(fā)的問題,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-04-04
  • 解決在Vue中使用axios POST請求變成OPTIONS的問題

    解決在Vue中使用axios POST請求變成OPTIONS的問題

    這篇文章主要介紹了解決在Vue中使用axios POST請求變成OPTIONS的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • vue3動態(tài)路由+動態(tài)組件+緩存應(yīng)用方式

    vue3動態(tài)路由+動態(tài)組件+緩存應(yīng)用方式

    這篇文章主要介紹了vue3動態(tài)路由+動態(tài)組件+緩存應(yīng)用方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04
  • Vue+Canvas繪圖使用的講解

    Vue+Canvas繪圖使用的講解

    這篇文章主要介紹了Vue+Canvas繪圖的使用方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • elementui時間/日期選擇器選擇禁用當(dāng)前之前(之后)時間代碼實(shí)例

    elementui時間/日期選擇器選擇禁用當(dāng)前之前(之后)時間代碼實(shí)例

    當(dāng)我們在進(jìn)行網(wǎng)頁開發(fā)時,通常需要用到一些日期組件來方便用戶選擇時間,其中element日期組件是一個非常好用的工具,這篇文章主要給大家介紹了關(guān)于elementui時間/日期選擇器選擇禁用當(dāng)前之前(之后)時間的相關(guān)資料,需要的朋友可以參考下
    2024-02-02

最新評論