AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

Vue3 中如何做高性能的拼音搜索,提高用戶體驗?

來源: 責編: 時間:2024-05-24 17:25:20 181觀看
導讀下拉框搜索最近頁面中需要一個下拉框,并且支持搜索功能(搜索選項文本和拼音),這是一個挺普通的小功能,代碼如下:request.ts 先準備一些假的下拉框數據,并模擬請求:圖片Index.vue 中進行請求,并渲染下拉框,配置一些屬性,支持搜索

下拉框搜索

最近頁面中需要一個下拉框,并且支持搜索功能(搜索選項文本和拼音),這是一個挺普通的小功能,代碼如下:DYo28資訊網——每日最新資訊28at.com

request.ts 先準備一些假的下拉框數據,并模擬請求:DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

Index.vue 中進行請求,并渲染下拉框,配置一些屬性,支持搜索選項文本:DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

可以看到實現了搜索文本,但是產品說還得支持搜索拼音呢~可以看到當前是不支持搜索拼音的。DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

拼音搜索

拼音搜索其實也不難,用一些庫即可,比如 pinyin-pro。DYo28資訊網——每日最新資訊28at.com

pnpm i pinyin-pro

我可以使用 pinyin-pro 這個庫,在獲取數據的時候為每一項的文本進行拼音翻譯,并放到字段 keywords 中。DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

現在可以看到每一項都有一個 keywords 字段,里面存了每一項的文本和拼音。DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

接著,在頁面中配置一下 Select 的搜索過濾函數。DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

現在就支持了文本搜索和拼音搜索了。DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

多個下拉框拼音搜索

上面例子是只有一個,那如果有多個下拉框呢?比如有兩個下拉框,我準備了兩個下拉框的假數據。DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

接著在頁面中展示兩個下拉框:DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

可以看到兩個下拉框的拼音數據耗時情況,其實當時頁面上不止兩個下拉框,大概有十幾個下拉框,且數據都很巨大,如果每一個下拉框都要接近200ms的耗時的話,那用戶體驗會很不好。DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

性能優化

根據觀察,我發現我這個頁面的十幾個下拉框其實都有很多下拉項是相同的,這意味著,有一些項存在重復翻譯的問題。DYo28資訊網——每日最新資訊28at.com

就比如這個“放米”,options1翻譯過一遍了,options2還翻譯一遍,這就導致了性能損耗。DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

所以其實可以使用緩存來進行優化,思路就是:DYo28資訊網——每日最新資訊28at.com

1、準備一個對象,key 是文本,value 是拼音DYo28資訊網——每日最新資訊28at.com

2、每次翻譯的時候DYo28資訊網——每日最新資訊28at.com

先檢測對象里是否能匹配到。DYo28資訊網——每日最新資訊28at.com

能匹配到直接用,不能匹配到才調用 pinyin-pro 進行翻譯。DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

這樣的話,能避免文本的重復翻譯,從而提升性能,由于 options2 有很多跟 options1 相同的項,所以 options2 很多項的翻譯都是直接取緩存的,數據處理的速度大大提升!DYo28資訊網——每日最新資訊28at.com

圖片圖片DYo28資訊網——每日最新資訊28at.com

其實這種方式也是有局限性的,如果每一個 options 的數據重合度都不高的話,那么這種優化方式也就沒啥意義了DYo28資訊網——每日最新資訊28at.com

所以最好的方式還是叫后端翻譯好拼音,傳給前端。DYo28資訊網——每日最新資訊28at.com

類似的場景

其實不止是上面舉的例子,還有其他項目中類似的場景,需要用到這種優化方式,比如:復雜的翻譯、復雜的數據處理。DYo28資訊網——每日最新資訊28at.com

例子終究是例子,重要的是能舉一反三。DYo28資訊網——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-90669-0.htmlVue3 中如何做高性能的拼音搜索,提高用戶體驗?

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 來自 Rust 生態的強烈沖擊?談談 Leptos 在語法設計上的精妙之處

下一篇: 分享七個.NET開源、功能強大的快速開發框架

標簽:
  • 熱門焦點
  • 6月安卓手機好評榜:魅族20 Pro蟬聯冠軍

    性能榜和性價比榜之后,我們來看最后的安卓手機好評榜,數據來源安兔兔評測,收集時間2023年6月1日至6月30日,僅限國內市場。第一名:魅族20 Pro好評率:95%5月份的時候魅族20 Pro就是
  • 5月iOS設備好評榜:iPhone 14僅排第43?

    來到新的一月,安兔兔的各個榜單又重新匯總了數據,像安卓陣營的榜單都有著比較大的變動,不過iOS由于設備的更新換代并沒有那么快,所以相對來說變化并不大,特別是iOS好評榜,老款設
  • 2023 年的 Node.js 生態系統

    隨著技術的不斷演進和創新,Node.js 在 2023 年達到了一個新的高度。Node.js 擁有一個龐大的生態系統,可以幫助開發人員更快地實現復雜的應用。本文就來看看 Node.js 最新的生
  • 微信語音大揭秘:為什么禁止轉發?

    大家好,我是你們的小米。今天,我要和大家聊一個有趣的話題:為什么微信語音不可以轉發?這是一個我們經常在日常使用中遇到的問題,也是一個讓很多人好奇的問題。讓我們一起來揭開這
  • 中國家電海外掘金正當時|出海專題

    作者|吳南南編輯|胡展嘉運營|陳佳慧出品|零態LT(ID:LingTai_LT)2023年,出海市場戰況空前,中國創業者在海外紛紛摩拳擦掌,以期能夠把中國的商業模式、創業理念、戰略打法輸出海外,他們依
  • 超級標準版旗艦!iQOO 11S全球首發iQOO超算獨顯芯片

    上半年已接近尾聲,截至目前各大品牌旗下的頂級旗艦都已悉數亮相,而下半年即將推出的頂級旗艦已經成為了數碼圈爆料的主流,其中就包括全新的iQOO 11S系
  • iQOO 11S或7月上市:搭載“雞血版”驍龍8Gen2 史上最強5G Soc

    去年底,iQOO推出了“電競旗艦”iQOO 11系列,作為一款性能強機,iQOO 11不僅全球首發2K 144Hz E6全感屏,搭載了第二代驍龍8平臺及144Hz電競屏,同時在快充
  • 首發天璣9200+ iQOO Neo8系列發布首銷售價2299元起

    2023年5月23日晚,iQOO Neo8系列正式發布。其中,Neo系列首款Pro之作——iQOO Neo8 Pro強悍登場,限時售價3099元起;價位段最強性能手機iQOO Neo8同期上市
  • 聯想小新Pad Pro 12.6將要推出,搭載高通驍龍 870 處理器

    聯想小新Pad Pro 12.6將于秋季新品會上推出,官方按照慣例直接在發布會前給出了機型的所有參數。聯想小新 Pad Pro 12.6 將搭載高通驍龍 870 處理器,重量為 5
Top