如何从ReactJS中的锚标记中删除HREF属性

时间:2015-06-17 15:15:19

标签: reactjs

我有以下渲染功能。它在组件具有URL时创建超链接,否则将其留空。

render: function() {
    var url = this.state.url;
    if (url) {
        return <a href={url}>{this.props.children}</a>
    } else {
        return <a>{this.props.children}</a>
    }
},    

问题是,一旦设置了HREF属性,React就不会删除它。 else子句将导致标记如下:<a data-reactid=".0.1" href="">

我知道我可以使用SPAN标签而不是A.为了保持一致,我宁愿不这样做。

1 个答案:

答案 0 :(得分:0)

您可以将href设置为#,然后为其添加一个onClick处理程序,其中只有e.preventDefault()。我只会使用跨度方法。