关注Dynamic tag name in jsx and React
我尝试了两个建议的答案,但似乎都没有通过任何道具!!
(以下是此问题的一个示例)[https://codesandbox.io/s/angry-torvalds-x7hcv?fontsize=14]
我做错了什么?
这是另一个使用React.createElement
的例子,它与上面的例子一样不小,它也不起作用,似乎没有传递任何道具
outputElement = React.createElement(
`${this.props.UI_Element.type}`,
{
...globalRequiredProperties,
...this.props.UI_Element.config
},
...UIChildren
)
简而言之,我的最终目标是仅通过具有类型(或您可能会说的名字)来动态创建导入的组件。
更新01:
不断地寻找后,我发现了另一种方法,它使用了一个数组,在该数组中,您将字符串映射到实际组件,然后创建一个使用该映射来调用组件的标签
Here is an example
这似乎可以正常工作,但是我仍然希望避免手动创建地图,这意味着我仍然只希望仅使用string
!来创建组件,有没有办法做到这一点?
答案 0 :(得分:1)
我一直在寻找一种方法,不仅可以动态导入组件,而且可以动态创建它,但是在寻找了一段时间后,我偶然遇到了一个图书馆,这样做无法实现动态标签的创建方式! !
该图书馆称为react-loadable
Here is an example
正如您所看到的,导入,组件标签和其他所有内容都是按照我想要的方式动态创建的,希望这对其他所有人也有帮助。