在Ionic中显示预格式化的HTML内容

时间:2019-07-04 08:54:36

标签: ionic-framework ionic4

我已经预先格式化了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>

...等等

我想获取有关处理这种情况的最佳实践的建议。任何帮助将不胜感激。谢谢!

1 个答案:

答案 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