Vue 中如何正确将后台返回的 HTML 标记转换为 HTML 格式?

Vue 中如何正确将后台返回的 HTML 标记转换为 HTML 格式?

Vue 标签转为 HTML 的正确方式

问题:

从后台返回的字段包含 HTML 标记,需要转换为 HTML 格式。使用 v-html 指令效果不正确,以下是如何解决的?

回答:

后台返回的字段可能经过安全过滤,导致 HTML 标记被转义。解决方法是先对字段进行反转义,再使用 v-html 指令。

以下是一个反转义函数 htmlDecode():

function htmlDecode(iStr) {
    let sStr = iStr;
    sStr = sStr.replaceAll("&", "&");
    sStr = sStr.replaceAll(">", ">");
    sStr = sStr.replaceAll("<p>然后使用以下方式在 Vue 组件中使用 htmlDecode():</p>
<div v-html="htmlDecode(content)"></div>

现在,v-html 指令将正确地将转义后的 HTML 标记呈现为实际的 HTML 元素。

以上就是Vue 中如何正确将后台返回的 HTML 标记转换为 HTML 格式?的详细内容,更多请关注其它相关文章!