angular 中 有DomSanitizer 的管道 怎么来做单元测试
各位大佬们,求助下 angular 的管道来写单元测试.:官网中的也仅给了一个简单的demo,但是我们实际使用中不一样。构造器里面有一个抽象方法,目前我自己实现,不太清楚DomSanitizer 该用啥实现类来初始化整个管道对象.
这是我管道的代码:
import { Pipe, PipeTransform } from '@angular/core';
import { DomSanitizer } from '@angular/platform-browser';
@Pipe({
name: 'keywords'
})
export class SearchKeywordsPipe implements PipeTransform {
constructor(
private sanitizer: DomSanitizer
) {
}
// 搜索关键字高亮
transform(val: string, keywords: string): any {
if (val) {
val = val.replace(/[<]/g, '<pre style="display:inline;"><</pre>');
const keywordsArr = keywords.split(' ');
for (const i in keywordsArr) {
if (i && keywordsArr[i] !== null && keywordsArr[i] !== '') {
const Reg = new RegExp(keywordsArr[i], 'g');
val = val.replace(Reg, `<b style="background-color: #FFFF00;">${keywordsArr[i]}</b>`);
}
}
return this.sanitizer.bypassSecurityTrustHtml(val);
}
}
}
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论