3 回答
TA贡献1806条经验 获得超8个赞
您可以使用函数来执行此操作dangerouslySetInnerHTML。
https://reactjs.org/docs/dom-elements.html#dangerouslysetinnerhtml
<div dangerouslySetInnerHTML={{__html: variable}} />;然后 HTML 代码将照此呈现。
TA贡献1829条经验 获得超9个赞
默认情况下,React 会转义 HTML 以防止 XSS(跨站点脚本)。如果你真的想渲染 HTML,你可以使用dangerouslySetInnerHTML属性:
<div dangerouslySetInnerHTML={{__html: variable}} />或者您可以使用任何解析 html 字符串的节点包。
TA贡献1820条经验 获得超3个赞
我认为当您
从数据库接收字符串时,它是字符串而不是 html 元素,并且反应无法将其显示为 html 元素。您可以使用此react-html-parser将从数据库接收到的此类 html 模板转换为显示为 html 元素。
import React from 'react';
import ReactHtmlParser, { processNodes, convertNodeToElement, htmlparser2 } from 'react-html-parser';
const StringToHtml = () => {
// retrieves variable here
return (
return <div>{ ReactHtmlParser(variable) }</div>;
);
}
export default StringToHtml;
添加回答
举报
