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 相关文章推荐
Javascript &amp; DHTML 实例编程(教程)(三)初级实例篇1—上传文件控件实例
Jun 02 Javascript
用JS实现的一个include函数
Jul 21 Javascript
jquery获取radio值(单选组radio)
Oct 16 Javascript
JS 对象属性相关(检查属性、枚举属性等)
Apr 05 Javascript
canvas实现手机端用来上传用户头像的代码
Oct 20 Javascript
javascript和jQuery中的AJAX技术详解【包含AJAX各种跨域技术】
Dec 15 Javascript
Node接收电子邮件的实例代码
Jul 21 Javascript
shiro授权的实现原理
Sep 21 Javascript
p5.js临摹动态图形的方法
Oct 23 Javascript
vue之组件内监控$store中定义变量的变化详解
Nov 08 Javascript
如何基于javascript实现贪吃蛇游戏
Feb 09 Javascript
vue 实现setInterval 创建和销毁实例
Jul 21 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
无需重新编译php加入ftp扩展的解决方法
2013/02/07 PHP
PHP中的Memcache详解
2014/04/05 PHP
ThinkPHP实例化模型的四种方法概述
2014/08/22 PHP
在Ubuntu 14.04上部署 PHP 环境及 WordPress
2014/09/02 PHP
thinkphp中html:list标签传递多个参数实例
2014/10/30 PHP
PHP并发查询MySQL的实例代码
2017/08/09 PHP
thinkphp中U方法按路由规则生成url的方法
2018/03/12 PHP
《JavaScript高级程序设计》阅读笔记(三) ECMAScript中的引用类型
2012/02/27 Javascript
Jquery右下角抖动、浮动 实例代码(兼容ie6、FF)
2013/08/15 Javascript
浅谈jQuery构造函数分析
2015/05/11 Javascript
js一维数组、多维数组和对象的混合使用方法
2016/04/03 Javascript
Highcharts 多个Y轴动态刷新数据的实现代码
2016/05/28 Javascript
手机端点击图片放大特效PhotoSwipe.js插件实现
2016/08/24 Javascript
基于SpringMVC+Bootstrap+DataTables实现表格服务端分页、模糊查询
2016/10/30 Javascript
详解Vue中使用Echarts的两种方式
2018/07/03 Javascript
基于jquery实现九宫格拼图小游戏
2018/11/30 jQuery
vue使用axios上传文件(FormData)的方法
2019/04/14 Javascript
vue 进阶之实现父子组件间的传值
2019/04/26 Javascript
JavaScript实现拖拽盒子效果
2020/02/06 Javascript
[02:51]DOTA2 2015国际邀请赛中国区预选赛第一日战报
2015/05/27 DOTA
python3.3教程之模拟百度登陆代码分享
2014/01/16 Python
Python简单计算文件MD5值的方法示例
2018/04/11 Python
python判断一个对象是否可迭代的例子
2019/07/22 Python
Python操作远程服务器 paramiko模块详细介绍
2019/08/07 Python
PyCharm2018 安装及破解方法实现步骤
2019/09/09 Python
Python 依赖库太多了该如何管理
2019/11/08 Python
Python下载的11种姿势(小结)
2020/11/18 Python
Python爬虫之App爬虫视频下载的实现
2020/12/08 Python
社区中秋节活动方案
2014/01/29 职场文书
初三学习决心书
2014/03/11 职场文书
公益广告语集锦
2014/03/13 职场文书
2014国庆节餐厅促销活动策划方案
2014/09/16 职场文书
国庆节主题班会
2015/08/15 职场文书
纪律委员竞选稿
2015/11/19 职场文书
python通配符之glob模块的使用详解
2021/04/24 Python
MySQL时间盲注的五种延时方法实现
2021/05/18 MySQL