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 相关文章推荐
在Z-Blog中运行代码[html][/html](纯JS版)
Mar 25 Javascript
jquery 新手学习常见问题解决方法
Apr 18 Javascript
JQuery.Ajax之错误调试帮助信息介绍
Jul 04 Javascript
jquery判断浏览器后退时候弹出消息的方法
Aug 11 Javascript
JavaScript中使用Object.prototype.toString判断是否为数组
Apr 01 Javascript
JS实现兼容性好,带缓冲的动感网页右键菜单效果
Sep 18 Javascript
浅析JavaScript声明变量
Dec 21 Javascript
使用BootStrap建立响应式网页——通栏轮播图(carousel)
Dec 21 Javascript
详解JS数据类型的值拷贝函数(深拷贝)
Jul 13 Javascript
js 对象使用的小技巧实例分析
Nov 08 Javascript
js实现幻灯片轮播图
Aug 14 Javascript
解决removeEventListener 无法清除监听的问题
Oct 30 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遍历数组的4种方法总结
2014/07/05 PHP
给PHP开发者的编程指南 第一部分降低复杂程度
2016/01/18 PHP
PHP中的函数声明与使用详解
2017/05/27 PHP
实例介绍PHP删除数组中的重复元素
2019/03/03 PHP
VBScript版代码高亮
2006/06/26 Javascript
JavaScript调用Activex控件的事件的实现方法
2010/04/11 Javascript
读jQuery之七 判断点击了鼠标哪个键的代码
2011/06/21 Javascript
一个挺有意思的Javascript小问题说明
2011/09/26 Javascript
js、css、img等浏览器缓存问题的2种解决方案
2013/10/23 Javascript
javascript/jquery获取地址栏url参数的方法
2014/03/05 Javascript
js利用prototype调用Array的slice方法示例
2014/06/09 Javascript
JavaScript中九种常用排序算法
2014/09/02 Javascript
JQuery中DOM实现事件移除的方法
2015/06/13 Javascript
javascript点击按钮实现隐藏显示切换效果
2016/02/03 Javascript
JavaScript代码性能优化总结篇
2016/05/15 Javascript
javascript 数组的正态分布排序的问题
2016/07/31 Javascript
Vue声明式渲染详解
2017/05/17 Javascript
vue组件发布到npm简单步骤
2017/11/30 Javascript
Hexo已经看腻了,来手把手教你使用VuePress搭建个人博客
2018/04/26 Javascript
D3.js(v3)+react 实现带坐标与比例尺的散点图 (V3版本)
2019/05/09 Javascript
Vue学习之常用指令实例详解
2020/01/06 Javascript
js实现简易计算器小功能
2020/11/18 Javascript
Jupyter notebook在mac:linux上的配置和远程访问的方法
2019/01/14 Python
python中正则表达式与模式匹配
2019/05/07 Python
python机器学习包mlxtend的安装和配置详解
2019/08/21 Python
Python 生成器,迭代,yield关键字,send()传参给yield语句操作示例
2019/10/12 Python
pandas 中对特征进行硬编码和onehot编码的实现
2019/12/20 Python
pytorch GAN生成对抗网络实例
2020/01/10 Python
Numpy中的数组搜索中np.where方法详细介绍
2021/01/08 Python
失业者真诚求职信范文
2013/12/25 职场文书
大学三年的自我评价
2013/12/25 职场文书
中学运动会广播稿
2014/01/19 职场文书
医院中层管理人员培训心得体会
2016/01/11 职场文书
导游词之无锡华莱坞
2019/12/02 职场文书
Oracle设置DB、监听和EM开机启动的方法
2021/04/25 Oracle
Python软件包安装的三种常见方法
2022/07/07 Python