<Link>如果URL已经激活,如何禁用反应路由器?例如,如果我的URL不会因单击而改变,<Link>我想完全阻止单击或呈现<span>而不是<Link>。
<Link>
<span>
我想到的唯一解决方案是使用activeClassName(或activeStyle)和setting pointer-events: none;,但是我想使用一种可在IE9和IE10中使用的解决方案。
activeClassName
activeStyle
pointer-events: none;
我不会问您为什么要这种行为,但是我想您可以包装<Link />在自己的自定义链接组件中。
<Link />
<MyLink to="/foo/bar" linktext="Maybe a link maybe a span" route={this.props.route} />
class MyLink extends Component { render () { if(this.props.route === this.props.to){ return <span>{this.props.linktext}</span> } return <Link to={this.props.to}>{this.props.linktext}</Link> } }
(ES6,但您可能已经有了大致的想法…)