uniapp 官方擴展組件 uni-combox 實現:只能選擇不能手寫(輸入中支持過濾顯示下拉列表)

uniapp 官方擴展組件 uni-combox 實現:只能選擇不能手寫(輸入中支持過濾顯示下拉列表)

  • uni-combox
    • uni-combox 原本支持:
    • 問題:
  • 改造源碼
  • 參考資料

uni-combox

在這里插入圖片描述 在這里插入圖片描述

uni-combox 原本支持:

  1. 下拉選擇。
  2. 輸入關鍵字,下拉列表自動過濾顯示相關
  3. 可以手動輸入下,下拉列表中不存在的內容。

問題:

我的需求是不能讓用戶手輸入,只允許選擇。
可能有人會說那不如直接使用 uni-data-select ,但是這個又不支持輸入時,自動過濾只顯示包含的選項。
所以只能自己改造一下了。

改造源碼

在這里插入圖片描述

  1. data 中添加 oldVal 用于保存初始值,在選擇無效值時用于回填。
  2. watch 中如果沒有值就初始化 oldVal。如果在 mounted 初始化,萬一 uni-combox 被多次封裝,就有可能拿不到值。
  3. onFocus 添加 this.inputVal = ''; 實現每次點開下拉列表都能顯示所有值。(默認因為已選的值起到過濾的作用,下拉列表將不再有其他內容)
    在這里插入圖片描述
  4. onBlur 添加邏輯判斷,如果失去焦點時輸入框中的值不是從下拉列表中選的就用 oldVal 覆蓋它。
if(!this.filterCandidates.some(s=>s===this.inputVal)){ this.inputVal = this.oldVal;
}

參考資料

組件名:uni-combox

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/41296.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/41296.shtml
英文地址,請注明出處:http://en.pswp.cn/news/41296.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【002】學習筆記之typescript的【任意類型】

任意類型 頂級類型:any類型和 unknown 類型 any類型 聲明變量的時候沒有指定任意類型默認為any任意類型都可以賦值給any,不需要檢查類型。也是他的弊端如果使用any 就失去了TS類型檢測的作用 unknown 類型 TypeScript 3.0中引入的 unknown 類型也被認為…

WSL2 ubuntu子系統換源

文章目錄 1.直接編輯/etc/apt/sources.list文件(需要使用 sudo):2.將文件中的內容刪除,將以下對應版本鏡像源復制到里面。ubuntu的鏡像源 3.更新 1.直接編輯/etc/apt/sources.list文件(需要使用 sudo): 將原文件做備份…

Leetcode Top 100 Liked Questions(序號53~74)

53. Maximum Subarray 題意:一個數組,找到和最大的子串 我的思路 我記得好像On的動態規劃來做的?但是想不起來了,先死做,用的前綴和——TLE超時 那就只能想想dp怎么做了 假設dp[i]表示的是以 i 為右端點的最大的…

XDR解決方案成為了新的安全趨勢

和當今指數倍增長的安全數據相比,安全人才的短缺帶來了潛在的風險。幾乎所有的公司,無論規模大小,在安全資源能力上都有限,需要過濾各種告警才能將分析量保持在可接受范圍。但這樣一來,潛在的威脅線索就可能被埋沒&…

LeetCode 0023. 合并 K 個升序鏈表

【LetMeFly】23.合并 K 個升序鏈表 力扣題目鏈接:https://leetcode.cn/problems/merge-k-sorted-lists/ 給你一個鏈表數組,每個鏈表都已經按升序排列。 請你將所有鏈表合并到一個升序鏈表中,返回合并后的鏈表。 示例 1: 輸入&…

docker的資源控制管理——Cgroups

目錄 一、對CPU使用率的控制 1.1 CPU 資源控制 1.2 cgroups有四大功能 1.3 設置cpu使用率上限 查看周期限制和cpu配額限制 進行cpu壓力測試然后修改每個周期的使用cpu的時間,查看cpu使用率 1.4 設置cpu資源占用比(設置多個容器時才有效&#xf…

跨境外貿業務,選擇動態IP還是靜態IP?

在跨境業務中,代理IP是一個關鍵工具。它們提供了匿名的盾牌,有助于克服網絡服務器針對數據提取設置的限制。無論你是需要經營管理跨境電商店鋪、社交平臺廣告投放,還是獨立站SEO優化,代理IP都可以讓你的業務程度更加絲滑&#xff…

Linux命令 -- vim

Linux命令 -- vim 前言一般模式光標移動復制粘貼內容查找 底線命令行模式 前言 用vim指令進入文件。 剛進入時是命令行模式,也叫一般模式。 按i或者insert進入編輯模式,此時可以編輯文件內容。 按esc可從編輯模式退回到一般模式,輸入冒號進…

基于 spring boot 的動漫信息管理系統【源碼在文末】

半山腰總是最擠的,你得去山頂看看 大學生嘛,論文寫不出,代碼搞不懂不要緊,重要的是,從這一刻就開始學習,立刻馬上! 今天帶來的是最新的選題,基于 spring boot 框架的動漫信息管理系…

Linux系統安裝Google Chrome

1.進入谷歌瀏覽器官網 Google Chrome - Download the Fast, Secure Browser from GoogleGet more done with the new Google Chrome. A more simple, secure, and faster web browser than ever, with Google’s smarts built-in. Download now.http://www.google.cn/intl/en_…

神經網絡基礎-神經網絡補充概念-50-學習率衰減

概念 學習率衰減(Learning Rate Decay)是一種優化算法,在訓練深度學習模型時逐漸減小學習率,以便在訓練的后期更加穩定地收斂到最優解。學習率衰減可以幫助在訓練初期更快地靠近最優解,而在接近最優解時減小學習率可以…

給wordpress添加關鍵詞與描述

Wordpress網站的關鍵字及網頁描述關系網站對搜索引擎的友好程度,如果自己手動加顯然太折騰了,那如何讓WordPress博客自動為每篇文章自動關鍵字及網頁描述。每篇文章的內容不同,我們該如何讓wordpress自動添加文章描述和關鍵詞呢?下…

Azure如何啟用網絡觀察應用程序

文章目錄 基礎概念介紹實操 基礎概念介紹 Azure中的網絡觀察應用程序是一種用于監視和診斷Azure網絡的工具。它提供了一種集中管理和監控網絡流量、連接性和性能的方式。網絡觀察應用程序能夠提供網絡流量分析、連接監視、性能監視和故障診斷等功能,用于幫助管理員…

K8S核心組件etcd詳解(下)

1 k8s如何使用etcd 在k8s中所有對象的manifest都需要保存到某個地方,這樣他們的manifest在api server重啟和失敗的時候才不會丟失。 只有api server能訪問etcd,其它組件只能間接訪問etcd的好處是 增強樂觀鎖系統及驗證系統的健壯性 方便后續存儲的替換…

神經網絡基礎-神經網絡補充概念-43-梯度下降法

概念 梯度下降法(Gradient Descent)是一種優化算法,用于在機器學習和深度學習中最小化(或最大化)目標函數。它通過迭代地調整模型參數,沿著梯度方向更新參數,以逐步接近目標函數的最優解。梯度…

使用 BERT 進行文本分類 (01/3)

攝影:Max Chen on Unsplash 一、說明 這是使用 BERT 語言模型的一系列文本分類演示的第一部分。以文本的分類作為例,演示它們的調用過程。 二、什么是伯特? BERT 代表 來自變壓器的雙向編碼器表示。 首先,轉換器是一種深度學習模…

SpringBoot 操作Redis、創建Redis文件夾、遍歷Redis文件夾

文章目錄 前言依賴連接 RedisRedis 配置文件Redis 工具類操作 Redis創建 Redis 文件夾查詢數據遍歷 Redis 文件夾 前言 Redis 是一種高性能的鍵值存儲數據庫,支持網絡、可基于內存亦可持久化的日志型,而 Spring Boot 是一個簡化了開發過程的 Java 框架。…

【TA 挖坑02】RayMarching SDF 物體黏合

寫在前面 由于實習和忙著論文很久沒經營博客了,最近以各種方式收集到了一些想實現的效果,其中一個就是卡通云融合、變大變小、聚散收攏的效果如何實現的問題,這就不得不提擱置了很久的RayMarching... 挖坑!整理一下有幫助的文章…

AWS WAF實戰、優勢對比和缺陷解決

文章目錄 挑戰和目標AWS WAF的優勢AWS WAF的不足我是怎么做的?什么是比較好的AWS WAF設計? 筆者為了解決公司Web站點防御性問題,較為深入的研究AWS WAF的相關規則。面對上千萬的沖突,筆者不得設計出一種能漂亮處理沖突數據WAF規則。 AWS WAF開發人員在…

Cocos2d 項目問題記錄

環境搭建 正常運行 Android 端的 Cocos2d 項目,本機至少需要 Android SDK、NDK 環境、Android Studio 項目報錯總結 CMake Error: CMake was unable to find a build program corresponding to "Ninja" 默認創建工程的 gradle.tools 版本為 3.1.0&…