我已经预先格式化了HTML内容(来自第三方),需要在Ionic中显示。例如,我有从数据库中获得的问题列表(预格式化的html),我需要将其显示为Ionic中的Ion-Items或Ion-Card列表。
从数据库中采样HTML内容:
第一条记录:
<p>
<span style="color: #eb4924;"><strong>SOME_TEXT_HEADER 1</strong></span><br />
TEXT_DESCRIPTION 1<br />
<span style="color: #339966;"><strong>SOME_COMMENTS_HEADER:</strong></span><br />
SOME_COMMENT_TEXT_1<br />
SOME_COMMENT_TEXT_2<br />
<img src="https://xyx.com/SOME_IMAGE.jpg" alt="ALT_TEXT" width="320" height="116"/>
SOME_COMMENT_TEXT_3<br />
</p>
第二条记录
<p>
<span style="color: #eb4924;"><strong>SOME_TEXT_HEADER 2</strong></span><br />
TEXT_DESCRIPTION 2<br />
<span style="color: #339966;"><strong>SOME_COMMENTS_HEADER:</strong></span><br />
SOME_COMMENT_TEXT_1<br />
SOME_COMMENT_TEXT_2<br />
<img src="https://xyx.com/SOME_IMAGE.jpg" alt="ALT_TEXT" width="320" height="116"/>
SOME_COMMENT_TEXT_3<br />
</p>
第三条记录:
<p>
<span style="color: #eb4924;"><strong>SOME_TEXT_HEADER 3</strong></span><br />
TEXT_DESCRIPTION 3<br />
<span style="color: #339966;"><strong>SOME_COMMENTS_HEADER:</strong></span><br />
SOME_COMMENT_TEXT_1<br />
SOME_COMMENT_TEXT_2<br />
<img src="https://xyx.com/SOME_IMAGE.jpg" alt="ALT_TEXT" width="320" height="116"/>
SOME_COMMENT_TEXT_3<br />
</p>
...等等
我想获取有关处理这种情况的最佳实践的建议。任何帮助将不胜感激。谢谢!
答案 0 :(得分:0)
您可以从Angular中使用DomSanitizer来显示您的html。
HTML:
<div class="details" [innerHtml]="details">
</div>
</ion-content>
在您的ts中:
displayHTML(data){
this.details = this.sanitizer.bypassSecurityTrustHtml(data);
});
别忘了在构造函数中声明:
public sanitizer: DomSanitizer