我正在使用一个在浏览器中创建终端界面的包。我可以使用HTML,我们需要显示HTML。理想情况下,我们希望在此HTML中显示一些材料组件。问题是,为了让它起作用,它必须被输入字符串。我找到了一个名为jsx-to-string
的包,它在某种程度上是有效的。但是,当我尝试使用Material UI组件,然后使用它将其转换为字符串时,我看到了如下所示的内容...
<withstyles(forwardref(typography))> Knowledge Check 1 </withstyles(forwardref(typography))>
在生产模式下尝试在浏览器中渲染时,看起来可能会有问题?
我想知道是否有一种方法可以构建一些JSX,包括材料、组件甚至样式,然后将其提取到字符串中。到目前为止,我在尝试让它工作时遇到了一些麻烦,我真的不确定如何才能用google搜索它
发布于 2021-05-06 15:13:06
您应该能够使用ReactDOM.render
方法将一些React JSX元素呈现为HTML。
在那里,您可以使用innerHTML
获得字符串形式的HTML输出。
const rootElement = document.getElementById("root");
ReactDOM.render(
<App />,
rootElement
);
console.log(rootElement.innerHTML) // pass this value to the interface you are building.
您可以在这里找到一个简单的工作示例:https://codesandbox.io/s/infallible-paper-yh871?file=/src/index.js
https://stackoverflow.com/questions/67419579
复制