2016-06-21 3 views
1

Я создаю трубы:Угловое 2, интерполяция HTML

import { Pipe, PipeTransform } from '@angular/core'; 

@Pipe({ 
    name: 'highlight' 
}) 
export class HighlightPipe implements PipeTransform { 
    transform(value: any, args: string): any { 
     let s = value + ''; 
     let startIdx = s.toLowerCase().indexOf(args.toLowerCase()); 
     let tokenLen = args.length; 

     if (startIdx >= 0 && tokenLen > 0) { 
      s = s.substring(0, startIdx) + '<strong>' + s.substring(startIdx, startIdx + tokenLen) + '</strong>' + s.substring(startIdx + tokenLen); 
     } 
     return s; 
    } 
} 

Чтобы использовать так:

<p>{{ result | highlight : search}}</p> 

Итак, если результат «Алабама» и мой поиск «ба», я хотите:

Ала ба ма

Но я получаю HTML тег:

Ala<strong>ba</strong>ma 

Как это решить?

ответ

Смежные вопросы