Javascript 如何在React中将HTML字符串转换为虚拟DOM?
我希望能够获取一个原始HTML字符串,通过Javascript 如何在React中将HTML字符串转换为虚拟DOM?,javascript,dom,reactjs,Javascript,Dom,Reactjs,我希望能够获取一个原始HTML字符串,通过dangerouslySetinerHTML将其插入React组件,并将其合并到虚拟DOM中。有没有办法做到这一点 例如,如果我有: <Component dangerouslySetInnerHTML={{__html: htmlFromServer}}></Component> 如何将htmlFromServer放入虚拟DOM?谢谢 Facebook的React Magic部分功能可以满足您的需求: 您可以使用本机方式完
dangerouslySetinerHTML
将其插入React组件,并将其合并到虚拟DOM中。有没有办法做到这一点
例如,如果我有:
<Component dangerouslySetInnerHTML={{__html: htmlFromServer}}></Component>
如何将
htmlFromServer
放入虚拟DOM?谢谢 Facebook的React Magic部分功能可以满足您的需求:
您可以使用本机方式完成此操作 例如:
let doc=new DocParser().parseFromString(htmlFromServer,'text/html'),
body=doc.querySelector('body'),
div=document.createElement('div');
div.textContent='你是DOM操纵器,你是';
附体儿童(div);
返回;
到目前为止您尝试了什么?为什么需要这样做?你想实现什么?我的应用程序的一部分工作原理是从服务器加载原始HTML,然后将其填充到React组件中。然后,我希望能够使用React异步加载的HTML(例如,使用findDOMNode等)。
let doc = new DocParser().parseFromString(htmlFromServer, 'text/html'),
body = doc.querySelector('body'),
div = document.createElement('div');
div.textContent = 'You DOM manipulator, you.';
body.appendChild(div);
return <Component dangerouslySetInnerHTML={{__html: body.innerHTML}}></Component>;