javascript - 在react js中将任意随机html对象转换为字符串

标签 javascript html reactjs

我想在React中渲染一个html对象。我需要获取 html,将其作为 String 传递给 React 并在那里渲染。我不确定如何继续。

html 对象可以是类似

的任何内容
<p>Hey man&nbsp;</p>
<p>nlkansnsa</p>
<p>as</p>
<p><strong>asasas</strong></p>
<p><strong>knla</strong></p>
<p><br></p>
<ul>
  <li><strong>point 1&nbsp;</strong></li>
  <li><strong>point 2</strong></li>
  <li><strong>point 3&nbsp;</strong></li>
</ul>
<p><br></p>

最佳答案

使用dangerouslySetInnerHTML渲染包含html元素的字符串,如下所示:

<div dangerouslySetInnerHTML={{ __html: "<div>hello</div>" }}></div>

您还可以传递包含该字符串的任何变量,如下所示:

let htmlString = "<div>hello</div>";

<div dangerouslySetInnerHTML={{ __html:  htmlString}}></div>

检查DOC

检查这个例子:

let string = "<p>Hey man&nbsp;</p><p>nlkansnsa</p><p>as</p><p><strong>asasas</strong></p><p><strong>knla</strong></p><p><br></p><ul><li><strong>point 1&nbsp;</strong></li><li><strong>point 2</strong></li><li><strong>point 3&nbsp;</strong></li></ul><p><br></p>";

var App = () => {

   return(
      <div>
         <div dangerouslySetInnerHTML={{ __html: "<div>hello</div>" }}></div>
         <div dangerouslySetInnerHTML={{ __html: string }}></div>
      </div>
   )

}

ReactDOM.render(<App/>, document.getElementById('app'))
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script>

<div id='app'/>

关于javascript - 在react js中将任意随机html对象转换为字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43588357/

相关文章:

javascript - React 中的承载身份验证

javascript - 类型错误 : Cannot delete property 'Symbol(@xml.js.parent)' of#<Node>

javascript - 当文本字段为空时,JS 从 div 中删除类?

javascript - 在 firebase 数据库中存储用户时出错

html - 如何在 CSS 中设置特定子标签的样式

html - 在CSS中绘制半圆形

html - CSS - 如何设置一个巨大的图像到浏览器窗口的大小?

javascript - 每次单击 Javascript 中的按钮时如何播放不同的声音?

reactjs - Flux 和 React 中的单位转换、权限和其他转换

javascript - React.js。如何更改关键字 'this'