React/JSX 动态组件名称

React/JSX dynamic component names

我希望根据字符串呈现组件。本质上,我希望找到相当于 JavaScript 的动态函数名称能力 (parent["childMethod"]) 的 JSX。

那么,如果我有一个字符串,比如"<MyComponent />",我该如何转换成 JSX 并渲染?

JSX 只是函数调用的一个很好的语法,所以你需要有实际的函数来使用一个组件。如果你有一个包含 React 组件的对象,那么你可以根据字符串 属性 渲染一个组件。例如,如果你有一个名为 MyComponents 的对象(对于 JSX 来说必须是大写的)并且该对象具有像 MyComponents.SomeInput = React.CreateClass(...) 这样的 React 组件。然后你可以在你的 JSX 中使用 <MyComponents.SomeInput />