首页 > 解决方案 > 如何将markdown字符串解析为html代码

问题描述

我正在尝试解析一个包含一些 Markdown 代码(如粗体或斜体)的字符串,我希望它被解析并显示为 HTML 代码。

我创建了一个管道来检测一些 Markdown 标签(目前只有粗体和斜体),所以它将它转换为 html 标签,如下所示:

<span>{{ line | markdown }}</span>

想象一下下面的字符串this is *italic* and this is **bold**

解析工作正常,因此它返回此行:
this is <em>italic</em> and this is <strong>bold</strong>.
问题是页面不会将字符串解释为 html 代码,而是纯文本。


所以我尝试像这样添加 [innerHTML] 标签:

<span [innerHTML]=line>{{ line | markdown }}</span>

现在,页面显示:
这是*斜体*,这是粗体


为什么它解析粗体但忽略斜体,我怎样才能得到我想要的?

标签: angular

解决方案


它应该是<span [innerHtml]="line | markdown"></span>。在这种情况下,管道的输出将作为 innerHtml 传递给跨度


推荐阅读