React使用动态标签babel es6生成组件

时间:2016-02-24 03:58:39

标签: reactjs babeljs

我希望能够像这样更改React组件父节点的标记

React.createClass({
    render: function(){
        const tagName = this.props.tagName;
        const domTag = tagName ? React.DOM[tagName] : React.DOM.div;
        return <domTag />
    }
})

从这个问题和答案中提取参考资料

Dynamically Rendering a React component

但是当我使用上面的方法时,我的反应组件标签类型是domTag ...

有什么想法吗?我是webpack和babel来编译代码。

1 个答案:

答案 0 :(得分:2)

答案是......

你只是传递一个字符串,而不是DOM函数,即

const TagName = 'input';
return <TagName />