angular2/ionic2 实现搜索结果中的搜索关键字高亮的示例


Posted in Javascript onAugust 17, 2018

本篇angular2/ionic2 实现搜索结果中的搜索关键字高亮的示例,分享给大家,具体如下:

添加一个pipe:

import { Pipe, Injectable, PipeTransform } from '@angular/core';
import { DomSanitizer } from '@angular/platform-browser';

@Pipe({
 name: 'keyword'
})
@Injectable()
export class KeywordPipe implements PipeTransform {
 constructor(private sanitizer: DomSanitizer) {
 }

 transform(val: string, keyword: string): any {
  const Reg = new RegExp(keyword, 'i');
  if (val) {
   const res = val.replace(Reg, `<span style="color: #81E1B7;">${keyword}</span>`);
   console.log(res);
   return this.sanitizer.bypassSecurityTrustHtml(res);
  }
 }
}

注: DomSanitizer,这个的目的是是数据在页面上的绑定能够safe的解析

html中使用方法:

<ion-label [innerHTML]="item.name | keyword:searchText"></ion-label>

注: 在标签里面用新的标签包起来,不然会有样式问题; 要用innerHTML来绑定数据。

演示效果

angular2/ionic2 实现搜索结果中的搜索关键字高亮的示例

开源项目地址:https://github.com/alex-0407/ionic3-awesome

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
ExtJS 2.0实用简明教程 之Ext类库简介
Apr 29 Javascript
javascript对象之内置对象Math使用方法
Apr 16 Javascript
JQuery对class属性的操作实现按钮开关效果
Oct 11 Javascript
jquery操作select方法汇总
Feb 05 Javascript
第一次动手实现bootstrap table分页效果
Sep 22 Javascript
jQuery Easyui datagrid连续发送两次请求问题
Dec 13 Javascript
JS判断键盘是否按的回车键并触发指定按钮点击操作的方法
Feb 13 Javascript
vue中实现左右联动的效果
Jun 22 Javascript
JS实现音量控制拖动
Jan 15 Javascript
javascript实现简易的计算器
Jan 17 Javascript
Vue实现简单计算器案例
Feb 25 Javascript
webpack5 联邦模块介绍详解
Jul 08 Javascript
layer.open关闭父窗口 以及调用父页面的方法
Aug 17 #Javascript
vue+element的表格实现批量删除功能示例代码
Aug 17 #Javascript
vue富文本框(插入文本、图片、视频)的使用及问题小结
Aug 17 #Javascript
浅析vue给不同环境配置不同打包命令
Aug 17 #Javascript
React中使用async validator进行表单验证的实例代码
Aug 17 #Javascript
JavaScript实现构造json数组的方法分析
Aug 17 #Javascript
layer弹出层父子页面事件相互调用方法
Aug 17 #Javascript
You might like
Zerg兵种介绍
2020/03/14 星际争霸
同时提取多条新闻中的文本一例
2006/10/09 PHP
php上传图片之时间戳命名(保存路径)
2014/08/15 PHP
PHP实现小偷程序实例
2016/10/31 PHP
尽可能写&quot;友好&quot;的&quot;Javascript&quot;代码
2007/01/09 Javascript
javascript实现的listview效果
2007/04/28 Javascript
让getElementsByName适应IE和firefox的方法
2007/09/24 Javascript
js数值和和字符串进行转换时可以对不同进制进行操作
2014/03/05 Javascript
js 实现的可折叠留言板(附源码下载)
2014/07/01 Javascript
Javascript核心读书有感之语言核心
2015/02/01 Javascript
ubuntu下安装nodejs以及升级的办法
2015/05/08 NodeJs
javascript实现禁止鼠标滚轮事件
2015/07/24 Javascript
详解JS面向对象编程
2016/01/24 Javascript
JS基于构造函数实现的菜单滑动显隐效果【测试可用】
2016/06/21 Javascript
移动端web滚动分页的实现方法
2017/05/05 Javascript
vue项目部署上线遇到的问题及解决方法
2018/06/10 Javascript
vue+element-ui集成随机验证码+用户名+密码的form表单验证功能
2018/08/05 Javascript
Nodejs调用Dll模块的方法
2018/09/17 NodeJs
vue中的过滤器实例代码详解
2019/06/06 Javascript
[01:04:06]DOTA2上海特级锦标赛A组资格赛#2 Secret VS EHOME第一局
2016/02/26 DOTA
Python实现从百度API获取天气的方法
2015/03/11 Python
Python numpy中矩阵的基本用法汇总
2019/02/12 Python
PyTorch搭建一维线性回归模型(二)
2019/05/22 Python
通过PHP与Python代码对比的语法差异详解
2019/07/10 Python
python读取word 中指定位置的表格及表格数据
2019/10/23 Python
软件工程专业推荐信
2013/10/28 职场文书
商务英语应届生自我鉴定
2013/12/08 职场文书
歌颂祖国的演讲稿
2014/05/04 职场文书
实习护士自荐信
2014/06/21 职场文书
房屋租赁协议书
2014/10/18 职场文书
2014年质量管理工作总结
2014/12/01 职场文书
先进党支部事迹材料2016
2016/02/26 职场文书
正能量励志演讲稿三分钟(范文)
2019/07/11 职场文书
浅谈golang 中time.After释放的问题
2021/05/05 Golang
python 实现体质指数BMI计算
2021/05/26 Python
关于PostgreSQL JSONB的匹配和交集问题
2021/09/14 PostgreSQL