vue项目中html文本安全性过滤

vue项目中可能会使用到 **v-html="htmlContent"**来展示富文本内容,对html文本即htmlContent进行安全性过滤:

javascript 复制代码
// html安全性过滤
<template>
    <div v-html="safeHtmlContent(htmlContent)"></div
</template>
<script>
import sanitizeHtml from 'sanitize-html';

export default {
  data() {
    return {
        htmlContent: '', // html文本
    }
  },
  methods: {
    safeHtmlContent(html) {
      const allowedTags = [
        'br',
        'p',
        'span',
        'strong'
      ];
      const rule = {
        allowedTags,
        allowedAttributes: {
        '*': ['data-id', 'class', 'style', 'contenteditable'],
        }
      };
      let realHtml = html?.replace(/\n/gm, '<br />');
      const safeContent = sanitizeHtml(realHtml, rule);
      return safeContent;
    }
  }
}
</script>

记录于2024-08-17

相关推荐
恋猫de小郭12 分钟前
移动端开发稳了?AI 目前还无法取代客户端开发,小红书的论文告诉你数据
前端·flutter·ai编程
文心快码BaiduComate30 分钟前
百度云与光本位签署战略合作:用AI Agent 重构芯片研发流程
前端·人工智能·架构
闲云一鹤1 小时前
nginx 快速入门教程 - 写给前端的你
前端·nginx·前端工程化
QCY1 小时前
「完全理解」1 分钟实现自己的 Coding Agent
前端·agent·claude
一拳不是超人2 小时前
Electron主窗口弹框被WebContentView遮挡?独立WebContentView弹框方案详解!
前端·javascript·electron
anyup2 小时前
🔥2026最推荐的跨平台方案:H5/小程序/App/鸿蒙,一套代码搞定
前端·uni-app·harmonyos
雮尘3 小时前
如何在非 Claude IDE (TARE、 Cursor、Antigravity 等)下使用 Agent Skills
前端·agent·ai编程
icebreaker3 小时前
Weapp-vite:原生模式之外,多一种 Vue SFC 选择
前端·vue.js·微信小程序
icebreaker3 小时前
重走 Vue 长征路 Weapp-vite:编译链路与 Wevu 运行时原理拆解
前端·vue.js·微信小程序
wuhen_n3 小时前
代码生成:从AST到render函数
前端·javascript·vue.js