【问题标题】:Is it possible to wrap the tag into a variable?是否可以将标签包装到变量中?
【发布时间】:2021-06-24 13:49:18
【问题描述】:

我有一个想要重用的组件,在不同的情况下,我想要带有不同标签“Entypo”和“AntDesign”的不同图标。我想将它们切换到类型属性。这是一个想法:

const tag = type === 'home' ? 'Entypo' : 'AntDesign';
<{tag} name='someName' />

但它没有通过。有什么我想念的吗?还是有别的办法?

【问题讨论】:

    标签: react-native jsx


    【解决方案1】:

    如果EntypoAntDesign 是组件(例如从react-native-vector-icons 导入),那么您应该可以这样做:

    const Tag = type === 'home' ? Entypo : AntDesign;
    
    <Tag name='someName' />
    

    【讨论】:

    • 行得通!有趣的是,如果变量名是小写的“tag”而不是“Tag”,那么它就不起作用。如果标签名称如您的示例所示大写,则可以
    • 请注意,这不是唯一的区别 - 在您的示例中,tag 是一个字符串,而不是一个组件,&lt;{tag} ... 是(afaik)不是一个有效的语法。
    猜你喜欢
    • 2019-05-29
    • 1970-01-01
    • 1970-01-01
    • 2015-07-22
    • 1970-01-01
    • 2013-07-06
    • 2019-07-27
    • 2023-04-08
    • 1970-01-01
    相关资源
    最近更新 更多