将包含html标记的存储字符串转换为html文本格式
我有一个Angular项目,它在firebase中存储数据。数据存储为数据库中的字符串(将包含html标记的存储字符串转换为html文本格式,html,string,angular,typescript,text-formatting,Html,String,Angular,Typescript,Text Formatting,我有一个Angular项目,它在firebase中存储数据。数据存储为数据库中的字符串(prdName:string;)。我想问一下,如果我在字符串中放置一个html标记,比如这是文本,然后将其存储,然后将其绑定/查看为html文本格式,是否可能?(文本变为粗体) //service.ts getData(){ this.List=this.firebase.List(“产品”); 返回此.List; } insertProduct(产品:产品){ 这个是.productList.push(
prdName:string;
)。我想问一下,如果我在字符串中放置一个html标记,比如这是文本
,然后将其存储,然后将其绑定/查看为html文本格式,是否可能?(文本变为粗体)
//service.ts
getData(){
this.List=this.firebase.List(“产品”);
返回此.List;
}
insertProduct(产品:产品){
这个是.productList.push({
prdName:Product.prdName,
PRD类别:Product.prd类别,
prdSup:Product.prdSup,
prdImage:Product.prdImage,
prdDescription:Product.prdDescription
});
}
您必须使用innerHtml绑定html标记:
<div [innerHTML]="ListService.selectedProduct.prdName"></div>
检查此项:我在我的项目中使用了这种管道,以使其正常工作
import { PipeTransform, Pipe } from '@angular/core';
import { DomSanitizer } from '@angular/platform-browser'
@Pipe({ name: 'safeHtml'})
export class SafeHtmlPipe implements PipeTransform {
constructor(private sanitized: DomSanitizer) {}
transform(value) {
return this.sanitized.bypassSecurityTrustHtml(value);
}
}
然后,在您想要拥有html的地方,您只需执行以下操作
<div [innerHTML]="someHtmlContent | safeHtml"></div>
需要管道使此html内容可信,有关此内容的详细信息: