当前位置:首页 > 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
分享给朋友:

相关文章

react 如何分页

react 如何分页

分页实现方法 在React中实现分页功能可以通过多种方式完成,具体取决于数据来源(如API或本地数据)和UI库的选择。以下是常见的实现方法: 使用本地数据分页 对于存储在组件状态或Context中…

如何下载react

如何下载react

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

如何创建react

如何创建react

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

理解如何react

理解如何react

理解React的核心概念 React是一个用于构建用户界面的JavaScript库,专注于通过组件化开发提高代码的可维护性和复用性。其核心思想包括虚拟DOM(Virtual DOM)和单向数据流,能够…

如何监控react性能

如何监控react性能

使用 React Profiler API React 16.5 及以上版本内置了 Profiler API,可直接测量组件渲染时间。通过 <React.Profiler> 包裹目标组件,…

如何实操react

如何实操react

安装 React 环境 使用 create-react-app 快速搭建项目: npx create-react-app my-app cd my-app npm start 项目启动后默认在…