我需要找到一个解决方案,以便能够将react router的功能与Material ui组件结合在一起。
例如,我有这样的场景:路由器和按钮。我想做的是把它们混合在一起,重新设计它们。
所以从一个简单的链接
<Link className={this.getClass(this.props.type)} to={`${url}`} title={name}>{name}</Link>
我尝试创建一个材质UI按钮,如下所示
<Link className={this.getClass(this.props.type)} to={`${url}`} title={name}>
<FlatButton label={name} />
</Link>
但我有以下错误和Javascript中断
invariant.js? 4599:38未捕获的不变违反:addComponentAsRefTo(...):只有ReactOwner可以有refs。您可能正在向组件添加一个引用,而该引用不是在组件的render
方法中创建的,或者您加载了多个React副本(详情:https://gist.github.com/jimfb/4faa6cbfb1ef476bd105)。
你知道该怎么处理这种情况吗?提前感谢您,如果您需要更多的信息,请告诉我
5条答案
按热度按时间gojuced71#
在新版本中的方法是:
看看这个线程或者这个question
nzrxty8p2#
这对我很有效:
参见https://github.com/callemall/material-ui/issues/850
ymzxtsji3#
gojuced74#
使用typescript时,可以尝试以下方法:
rbpvctlc5#
Material UI按钮作为React Router链接要用作React Router链接,您可以使用Button的组件 prop 。