如何使用Link来包装div in react?

时间:2017-04-05 04:57:36

标签: javascript reactjs

<Link to="/promospace/detail">
    <div className="card">
        /* content */
    </div>
</Link>

我不能在上面做,没有错误,但它不起作用。任何线索如何在Link中包装div?或者我必须将它绑定到点击处理程序?不能在jsx中使用Link?

1 个答案:

答案 0 :(得分:2)

在链接中使用一个span,并在其上设置display: block,这肯定会在任何地方都有效,并且会验证!

<Link to="/promospace/detail">
    <span className="card" style={{"display": "block"}}>
        /* content */
    </span>
</Link>

否则你可以在onClick事件上进行动态路由

changeRoute = () => {
    this.context.router.push('/promospace/detail');
}
......
<div className="card" onClick={this.changeRoute}>
        /* content */
</div>

....
MyComponent.contextTypes = {
     router: React.PropTypes.func.isRequired
}