当前位置:首页 > React

react如何渲染html

2026-02-11 23:48:04React

渲染 HTML 字符串的方法

在 React 中直接渲染 HTML 字符串需要使用 dangerouslySetInnerHTML 属性。该属性允许插入未经转义的 HTML 内容,但需谨慎使用以避免 XSS 攻击。

react如何渲染html

function RenderHTML({ htmlString }) {
  return <div dangerouslySetInnerHTML={{ __html: htmlString }} />;
}

安全注意事项

使用 dangerouslySetInnerHTML 前必须确保 HTML 字符串来源可信。建议对用户输入内容进行消毒处理,可使用库如 DOMPurify 清除潜在恶意代码。

react如何渲染html

import DOMPurify from 'dompurify';

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

替代方案

对于需要动态生成复杂 HTML 的场景,可考虑使用 React 组件直接构建 DOM 结构。这种方式更安全且易于维护。

function DynamicContent({ items }) {
  return (
    <ul>
      {items.map(item => (
        <li key={item.id}>{item.text}</li>
      ))}
    </ul>
  );
}

性能优化

频繁更新大量 HTML 内容时,应考虑使用 useMemo 缓存处理结果,避免不必要的重新渲染。

function OptimizedRenderer({ htmlString }) {
  const memoizedHTML = useMemo(() => {
    return DOMPurify.sanitize(htmlString);
  }, [htmlString]);

  return <div dangerouslySetInnerHTML={{ __html: memoizedHTML }} />;
}

标签: reacthtml
分享给朋友:

相关文章

vue实现html跳页

vue实现html跳页

Vue 实现 HTML 跳页的方法 在 Vue 中实现页面跳转(路由跳转)通常有两种方式:通过 <router-link> 组件或编程式导航。以下是具体实现方法。 使用 <rout…

css与html制作

css与html制作

CSS与HTML制作基础 CSS与HTML是构建网页的核心技术,HTML负责结构,CSS负责样式。以下是关键要点: HTML基础结构 <!DOCTYPE html> <htm…

react如何调试

react如何调试

调试 React 应用的方法 使用 React Developer Tools React Developer Tools 是 Chrome 和 Firefox 的浏览器扩展,可以检查组件树、状态和…

如何创建react

如何创建react

创建React项目的步骤 使用Create React App工具快速搭建React项目。确保已安装Node.js(版本需≥14.0.0)和npm(版本需≥5.6)。 打开终端或命令行工具,运行以…

react 如何运行

react 如何运行

运行 React 项目的步骤 安装 Node.js 确保系统已安装 Node.js(建议版本 16+),可通过官网下载并安装。安装后验证版本: node -v npm -v 创建 React 项目…

如何用react

如何用react

使用React的基本步骤 安装Node.js和npm 确保系统已安装Node.js和npm。Node.js自带npm,可从官网下载安装包。安装完成后,通过命令行验证版本: node -v npm…