antd-select拼音首字母模糊查询

news/2024/11/24 11:35:41/

antd-select拼音首字母以及汉字模糊查询

  • cnchar
    • 安装
    • 引入
    • 使用
      • spell方法
      • stroke方法
  • 下拉框
    • 数据
    • 下拉框
    • 重写筛选函数

百度搜了很久,jQuery方法在react里会报错,终于找到了一个可以实现的第三方库cnchar。可以实现拼音首字母以及汉字模糊查询

cnchar

安装

npm i cnchar

引入

在使用的页面导入

import cnchar from 'cnchar';

使用

spell方法

var spell1 = cnchar.spell("你好", "array", "tone", "poly"); // 数组分割、带音调、候选多音字
var spell2 = cnchar.spell('汉字拼音','first', 'low'); // 首字母小写
var spell3 = cnchar.spell('長城'); // 支持繁体字(依赖cnchar-trad库)
var spell4 = cnchar.spell('長城','simple'); // 禁用繁体字拼音
var spell5 = "你好".spell(); // string prototype 调用
console.log(spell1);
console.log(spell2);
console.log(spell3);
console.log(spell4);
console.log(spell5);

运行结果:

[ "Nǐ", "(Hǎo|Hào)" ]
hzpy
ChangCheng
長Cheng
NiHao

在这里插入图片描述

stroke方法

var stroke1 = cnchar.stroke('汉字笔划', 'array'); // 数组分割
var stroke2 = cnchar.stroke("你好", "order", "name"); // 数组分割、启用笔划(依赖cnchar-order库)
var stroke3 = cnchar.stroke('長城', 'array'); // 支持繁体字(依赖cnchar-trad库)
var stroke4 = cnchar.stroke('長城', 'simple', 'array'); // 禁用繁体字笔划数
var stroke5 = "你好".stroke(); // string prototype 调用
console.log(stroke1);
console.log(stroke2);
console.log(stroke3);
console.log(stroke4);
console.log(stroke5);

运行结果:

[ 5, 6, 10, 6 ]
[ [ "撇", "竖", "撇", "横撇|横钩", "竖钩", "撇", "点" ], [ "撇点", "撇", "横", "横撇|横钩", "竖钩", "横" ] ]
[ 8, 9 ]
[ 0, 9 ]
13

在这里插入图片描述

下拉框

数据

有专门的department表,phone表内的department条目用的department表的id,所以用value记录id方便提交时数据的获取。label设置department表内的部门名称

//下拉框以及数据const deoptions=[];for(let item in de) {const key1 = de[item].id;const key2 = de[item].department;const obj = {'value': key1,'label': key2};deoptions.push(obj)}

下拉框

optionFilterProp设置select显示的内容设置为label。默认为value
filterOption根据输入项进行筛选。当其为一个函数时,接收inputValue,option 两个参数,当 option 符合筛选条件时,应返回 true,反之则返回 false

<SelectshowSearchoptionFilterProp="label"filterOption={(input, option) =>selectPinYin(input, option)}options={deoptions}></Select>

重写筛选函数

input为输入内容。因为我的内容是label,所以用option.label来匹配。option.label.spell(‘first’)获取label内容的首字母,为了匹配,将字符串换成小写。

const selectPinYin = ( input, option ) => {//如果以拼音首字母输入搜索if (input.charCodeAt() >= 32 && input.charCodeAt() <= 126) {return option.label.spell('first').toLowerCase().indexOf(input.toLowerCase()) >= 0;//如果以中文输入搜索} else {return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;}};

http://www.ppmy.cn/news/661373.html

相关文章

用拼音输入法字典库实现同音字模糊查询

在开发各类应用管理系统中&#xff0c;一般都要实现各种查询功能&#xff0c;如何准确、快速查找到符合条件的记录&#xff0c;是实现各种查询功能的重点。系统的实际开发过程中&#xff0c;查询功能一般都是通过对字符进行比较、判断等方法来实现。我们开发一个人事管理系统中…

苹果电脑如何设置自定义模糊拼音操作?

在苹果电脑上对拼音输入法的纠正模糊拼音选项进行个性化设置&#xff0c;便于在使用电脑拼音输入法时&#xff0c;可以有效提升工作效率。那么该如何设置自定义模糊拼音操作呢&#xff1f;接下来小编给大家详细介绍一下具体的操作流程&#xff0c;需要的朋友欢迎参考操作&#…

mybatis支持拼音、汉字模糊查询

mybatis支持拼音、汉字模糊查询 <if test"Name ! null and Name ! and Name.matches([\u4e00-\u9fa5])">and NAME like concat(%,#{Name},%)</if><if test"Name ! null and Name ! and Name .matches([a-zA-Z])">and (PINYIN like con…

Android 利用AutoCompleteTextView实现模糊搜索功能,搜索结果自动提示,识别拼音首字母并转汉字提示

这里说一下怎么利用 Android 的 AutoCompleteTextView 控件实现模糊搜索功能&#xff0c;AutoCompleteTextView 自带自动提示功能。如果 对自动提示的布局自定义要求比较高&#xff0c;可以采用 EditText 和 ListView 结合实现搜索的自动提示。 先看一下效果图&#xff1a; 先…

在Mac电脑的输入法中如何开启自动纠正模糊拼音功能?

在我们使用电脑的过程中&#xff0c;有些用户习惯根据自己的日常语言习惯来输入中文&#xff0c;这就产生很多模糊的拼音&#xff0c;在手机的输入功能里都有自动纠正模糊拼音的功能&#xff0c;但在Mac电脑中要手动开启模糊拼音纠正的功能&#xff0c;下面分享Mac电脑输入法开…

【模糊检测】

模糊检测 模糊图像特点&#xff1a;边缘模糊&#xff0c;梯度变化小。 传统方法 更多方法模糊图像检测-无参考图像的清晰度评价 - 知乎 (zhihu.com) 拉普拉斯方差 从空间域出发&#xff0c;分析模糊图像的梯度比较小。拉普拉斯算子测量图像的二阶导数&#xff0c;突出显示…

Layui-select 下拉框实现拼音全拼匹配/首字母模糊搜索

Layui layui&#xff08;谐音&#xff1a;类UI) 是一款采用自身模块规范编写的前端 UI 框架。亲测很好用&#xff0c;很好看。 官网&#xff1a;http://www.layui.com/ github&#xff1a;https://github.com/sentsin/layui 插播一条相关博客&#xff1a;Layui-select 修复搜…

elementUI Cascader 级联选择器 拼音模糊搜索

项目场景&#xff1a; 我领导说他大BOSS想要可以拼音搜索&#xff0c;然后我就去百度百度百度… 只是elementUI级联选择器的拼音模糊搜索&#xff0c;可以作为普通输入框模糊搜索的借鉴… 实现步骤&#xff1a; 1、下载依赖&#xff1a; 可以在VScode打开项目的终端里执行这…