ionic -- 实现根据拼音字母搜索人员

news/2024/11/18 17:33:32/

  看到小咸儿完成这个任务,心情十分亢奋啊!但是是基于先把拼音与中文转换的node包下载下来。ionic前端 - 汉字拼音

  首先先说一下小咸儿这个问题的思路:

  • 1.将所有人的姓名先查询出来
  • 2.将汉字名字转换成拼音
  • 3.获取输入框中值对中文名字或拼音名字进行匹配,查询出对应的人员

  首先将所有人员查询出来是一个简单的功能:
代码:

getData() {this.companyId = localStorage.getItem('companyId');// let dataUrl = "http://192.168.22.52/auth-web/user/queryUsersByLike/666888?page=1&limit=550";let dataUrl = "http://192.168.22.55/auth-web/user/queryUserInfoByCompanyId/" + this.companyId;this.http.get(dataUrl).subscribe(res => {// 若查询不成功,则返回并清空缓存// if (res.status != 200) {//   localStorage.removeItem(" ");//   return;// }// this.user = res.json().data;if (res.json().code == '0000') {if (res.json().data.length > 0) {this.user = res.json().data;} else {return;}}})}

在这里插入图片描述

  将所有人员查出来之后,需要的就是将所有的人员名字转成拼音了,在上一篇小咸儿的博客中有介绍如何在前端将汉字转为拼音,十分的简单!

  其中还有一个小技巧,就是使用split去掉空格

initializeItems() {this.items = this.user;for(let i=0; i<this.items.length;i++){this.items[i].pinYinName = tr(this.items[i].userName).toLowerCase().split(" ").join("");}console.log(this.items);}

在这里插入图片描述

  重点来了,既然汉字名字和拼音名字都有了,那么就需要去匹配查询了。

 // 搜索getItems(ev) {var s = document.querySelector('.loadUser');s['style'].display = 'inline';var s = document.querySelector('.classBtnOk');s['style'].display = 'inline';//如果搜索框的值为undefined,则显示加载数据if (ev.target.value == undefined) {var s = document.querySelector('.classBtnOk');s['style'].display = 'none';}// Reset items back to all of the itemsthis.initializeItems();// set val to the value of the ev targetconst val = ev.target.value;// if the value is an empty string don't filter the itemsif (val && val.trim() != '') {this.items = this.items.filter((item) => {// 如果有数据,则不显示没有数据spanif (item.userName.toLowerCase().indexOf(val.toLowerCase()) > -1 || item.pinYinName.toLowerCase().indexOf(val.toLowerCase()) > -1) {var s = document.querySelector('.loadUser');s['style'].display = 'inline';}return (item.userName.toLowerCase().indexOf(val.toLowerCase()) > -1,item.pinYinName.toLowerCase().indexOf(val.toLowerCase()) > -1);//(item.toLowerCase().indexOf(val.toLowerCase()) > -1)})}else {this.items = null;}}

在这里插入图片描述

  这样小咸儿的根据拼音字母查询人员就完成了,()。接下来就是去看看还有什么地方需要优化了。


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

相关文章

php汉字转拼音百家姓版,砚田马中华书《百家姓》(文字拼音版)

zho qin sūn lǐ 赵 钱 孙 李zhōu w zhng wng 周 吴 郑 王fng chn chǔ wi 冯 陈 褚 卫 jiǎng shěn hn yng 蒋 沈 韩 杨 zhū qn yu xǔ 朱 秦 尤 许h lǚ shī zhāng 何 吕 施 张 kǒng co yn hu 孔 曹 严 华jīn wi to jiāng 金 魏 陶 姜q…

生僻字用计算机的歌词,生僻字歌词带拼音版本:生僻字歌词是什么意思?

最近有一首史上最难唱的歌《生僻字》&#xff0c;《生僻字》顾名思义全都是有生僻字组成&#xff0c;看完大家都觉得自己可能读的是假书&#xff0c;因为像个文盲一样根本不知道这些生僻字都怎么念&#xff0c;也不知道这些生僻字歌词是什么意思。小编给大家带来了《生僻字》拼…

C#中汉字按照首字拼音排序

string[] arr { "熊德舞", "欧阳修", "盛军", "舞阳", "阿史那","陈吉利" };//姓名按照拼音排序 Array.Sort(arr);排序后效果&#xff1a; - arr {string[6]} string[] [0] "阿史那…

漢字轉換成拼音

代码 1 <! DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" > 2 < html xmlns "http://www.w3.org/1999/xhtml" > 3 4 < head > 5 < met…

Linux锁机制

文章目录 一、针对变量或结构体加锁二、文件锁2.1 文件锁的分类2.1.1 建议性锁2.1.2 强制性锁2.2 flock函数 2.3 fcntl函数 Linux下开发&#xff0c;可能会遇到多个进程或线程在同一时间对相同文件或变量或结构体进行写操作&#xff0c;如果使用操作不当&#xff0c;可能会造成…

Android之OkHttp框架的分析

Okhttp是Android开发常用的一个网络请求框架&#xff0c;下面将按照自己的理解将okhttp分为三条主线进行分析。 文章目录 使用方式OkHttp第一条主线&#xff1a;请求发送到哪里去了&#xff1f;OkHttp第二条主线&#xff1a;请求是如何被消费的&#xff1f;OkHttp第三条主线&a…

傻瓜式解决神舟系电脑rerun占用过高

神舟系电脑有一些会有一个cpu占用到30%左右的进程&#xff0c;叫rerun。是一个和电源模式相关的进程。你如果在任务管理器中找到了rerun并且右键打开文件所在的位置&#xff0c;在同一目录下你会发现还有个hkeytray.exe&#xff08;hotkeytray.exe&#xff09;双击启动后&#…

JavaSE上篇

Java JavaSE 1.JavaSE&#xff1a;Java入门 1.1 Java的特性和优势 一、简单性 就是c语法的纯净版。没有头文件&#xff0c;指针运算&#xff0c;结构&#xff0c;联合&#xff0c;操作符重载&#xff0c;虚基类等等。由于语法基于c&#xff0c;因此学习起来完全不费力。 …