[英]Rendering escaped HTML from api call with vue.js
我正在嘗試渲染從Vue的api調用返回的數據。
數據的一部分以轉義html的形式出現,如下所示:
body: "<ul> ↵ <li>This is <strong>Test
Text.</strong></li> ↵</ul>"
我嘗試了如下的v-html指令:
<div v-for="(item, index) in filteredList">
<div v-html="item.body"></div>
</div>
它正在渲染,但是具有可見的錨標簽,完全如下所示,ul,li,強標簽在瀏覽器中都可見
<ul> <li>This is <strong>Test Text</strong></li> </ul>
我嘗試過解碼功能(使其與v-html完全相同),一個消毒插件,查看了此帖子Vue模板-將HTML特殊字符(數字)轉換為符號? 和許多其他東西,但我似乎無法正確渲染
您可以嘗試使用DOMParser
。
const doc = new DOMParser().parseFromString("<li>", "text/html"); const textContent = doc.documentElement.textContent; console.log(textContent);
在這里運行完之后,您可以將結果傳遞給v-html
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.