当前位置:首页 > React

react如何展示html

2026-01-23 19:38:52React

渲染原始 HTML

在 React 中直接渲染原始 HTML 需要使用 dangerouslySetInnerHTML 属性。该属性接收一个对象,其中 __html 键对应的值是需要渲染的 HTML 字符串。

function DisplayHTML({ htmlContent }) {
  return <div dangerouslySetInnerHTML={{ __html: htmlContent }} />;
}

清理 HTML 内容

为了防止 XSS 攻击,建议在渲染前使用 DOMPurify 等库清理 HTML 内容:

import DOMPurify from 'dompurify';

function SafeHTML({ htmlContent }) {
  const cleanHTML = DOMPurify.sanitize(htmlContent);
  return <div dangerouslySetInnerHTML={{ __html: cleanHTML }} />;
}

替代方案

对于简单的 HTML 片段,可以考虑手动解析并转换为 React 元素:

function parseSimpleHTML(html) {
  return html.replace(/<b>(.*?)<\/b>/g, '<strong>$1</strong>');
}

function SimpleHTMLRenderer({ html }) {
  return <div>{parseSimpleHTML(html)}</div>;
}

注意事项

使用 dangerouslySetInnerHTML 时需要注意:

  • 仅渲染可信来源的内容
  • 避免直接渲染用户输入的内容
  • 考虑使用 CSP 等安全措施
  • 对于复杂 HTML 可能需要配合其他库处理

服务端渲染场景

在 Next.js 等框架中,可以结合 dangerouslySetInnerHTML 与 SSR:

react如何展示html

export default function Page({ serverData }) {
  return (
    <main>
      <article dangerouslySetInnerHTML={{ __html: serverData.content }} />
    </main>
  );
}

标签: reacthtml
分享给朋友:

相关文章

react native如何启动

react native如何启动

如何启动 React Native 项目 安装 Node.js 和 npm 确保已安装 Node.js(建议版本 16 或更高)和 npm(Node.js 自带)。可通过以下命令检查版本: node…

react如何开发组件

react如何开发组件

React 组件开发基础 React 组件分为函数组件和类组件两种形式。函数组件是现代 React 开发的主流方式,结合 Hooks 可以实现完整功能。 函数组件示例: function Gree…

如何下载react

如何下载react

下载 React 的方法 通过 npm 或 yarn 安装 React 可以通过包管理器 npm 或 yarn 安装。确保已安装 Node.js(包含 npm),然后在项目目录中运行以下命令:…

react 如何debug

react 如何debug

React 调试方法 使用 React Developer Tools React Developer Tools 是浏览器扩展,支持 Chrome 和 Firefox。安装后,可以在开发者工具中查看…

odyssey react 如何

odyssey react 如何

Odyssey React 是耐克推出的一款跑鞋系列,以其轻量化设计和React泡沫缓震技术著称。以下是关于该系列鞋款的主要特点和使用建议: 核心特点 React泡沫中底提供出色的能量回馈和缓震效果…

react 如何操作cookie

react 如何操作cookie

安装依赖 在React项目中操作cookie通常需要第三方库的支持,推荐使用js-cookie。通过npm或yarn安装: npm install js-cookie # 或 yarn add js…