[英]JSX get Component by string
这是很难解释的。
我从组件库中获得几个Icons
,如下所示:
import { Icons } from
my-component-library import { Icons } from
'。
假设我有3个图标,分别为IconPlus
, IconMinus
和IconEquals
。
我可以轻松显示IconEquals
以及一个描述道具,如下所示:
const IconContainer = ({ description ) => (
<div>
{description}
<Icons.IconEquals />
</div>
)
这很好。 现在,我正在尝试实现一个模板,在该模板中,我可以将另一个prop icon
传递给此容器,该容器将显示相应的图标。
例如。 如果icon
是IconPlus
然后,应呈现以下内容:
<div>
{description}
<Icons.IconEquals />
</div>
我该如何实现我的JSX
?
这基本上就是我所拥有的:
import { Icons } from 'my-component-library'
const IconContainer = ({ description, icon }) => (
<div>
{description}
<Icons.{icon} /> // <---- Obviously that doesn't work
// ^^^^ But I need something like this
</div>
);
是否有可能做到这一点?
您可以这样使用:
<Icons[icon] />
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.