v-html标签未闭合导致HTML解析错误
如果数据源是采集的 ,很难避免有未闭合的html。安装插件sanitize-html
sanitize-html 提供了一个简单的 HTML sanitizer,具有清晰的 API。
sanitize-html 是宽容的。它非常适合清理 HTML 片段,例如由 CKEditor 和其他富文本编辑器创建的片段。在从 Word 复制和粘贴时删除不需要的 CSS 尤其方便。
sanitize-html 允许您指定要允许的标签,以及每个标签的允许属性。
如果不允许使用标记,则不会丢弃标记的内容。对此有一些例外,在下面的“丢弃不允许的标记的全部内容”部分中讨论。
不良封闭p和img元素的语法被清理。
href属性验证,以确保它们只包含http,https,ftp和mailto网址。也允许使用相对 URL。src属性同上。
src还支持通过过滤主机名来允许特定 url 作为iframe 标记。
不保留 HTML 注释。
直接上代码
html中代码为
<div class="article-content" v-html="sanitizeHTML(content)"></div>
import sanitizeHTML from "sanitize-html";
data() {
return {
sanitizeHTML: sanitizeHTML,
};
}