我正在try 创建一个Angular2自定义管道,输出原始html.我希望它只是将输入中的换行符转换为HTML换行符.如何从angular2管道输出原始HTML?
下面是我当前的管道定义,但它避开了我不想要的HTML:
import {Pipe, PipeTransform} from '@angular/core';
/*
* Converts newlines into html breaks
*/
@Pipe({ name: 'newline' })
export class NewlinePipe implements PipeTransform {
transform(value: string, args: string[]): any {
return value.replace(/(?:\r\n|\r|\n)/g, '<br />');
}
}
编辑:简单说明一下,因为这个问题似乎得到了许多观点和活动,所以我将接受的答案保留不变,尽管对于我的特定示例,用例CSS可能会是更好的 Select ,而且实际上也是我所更改的.但我的实际问题是"如何从Angular 为2的管道输出原始html",而不是公认的答案所显示的"呈现换行符的最佳方式是什么".
不过,请注意,正如下面的 comments 中所提到的,如果您确实在接受的答案中使用了该方法,则需要确保您没有呈现未经判断的用户输入,因为这可能会使您面临XSS漏洞.