是否可以从外部源获取 HTML/JSX 内容并在 React 中动态呈现它?在我们的例子中,我们希望从 Wordpress API 获取内容并在客户端和服务器上呈现它(我们使用 NextJS)
因此,Wordpress API 返回一个 JSON 响应,其中包含一个内容属性,它是一个 HTML/JSX 字符串。内容看起来像这样。
{
content: "<div><Slider imageCount="5" galleryID="1"></Slider><span>This is an image gallery</span></div>"
}
所以,正如你所看到的,它将是 HTML 和 React 组件/JSX 的混合,表示为一个字符串
我会使用 Axios 进行调用以获取内容(在服务器和客户端上都使用 NextJS 的 getInitialProps() 方法),然后我需要渲染它,但我是新手,我可以看到一些问题。
1)在 React 中,JSX 是在构建时编译的,而不是运行时,我不知道如何解决这个问题(例如,在 Angular 中使用 $compile 服务会很容易)。
2)由于我们不知道来自 Wordpress 的内容将使用哪些组件,我们必须在页面顶部导入其中的每一个,内容可能包含一个组件,也可能包含一个组件,谁知道?。
现在,我认为这是不可能的,这意味着我们必须重新考虑使用 React,但我真的希望有人能给出答案。
任何帮助将不胜感激。