2016-07-04 5 views
0

Мне нужно найти решение, позволяющее объединить функции реагирующего маршрутизатора с компонентами материала ui.Как объединить ReactJs Router Link и компоненты материала-ui (например, кнопку)?

Например, у меня есть этот сценарий: маршрутизатор и кнопка. То, что я пытался сделать, это смешивать их вместе и восстанавливать их.

Так из простой ссылки

<Link className={this.getClass(this.props.type)} to={`${url}`} title={name}>{name}</Link> 

Я попытался создать материал пользовательского интерфейс кнопки в виде следующей

<Link className={this.getClass(this.props.type)} to={`${url}`} title={name}> 
    <FlatButton label={name} /> 
</Link> 

, но у меня есть следующее сообщение об ошибке и Javascript разбивает

инвариантного .js? 4599: 38Uncaught Invariant Violation: addComponentAsRefTo (...): Только у ReactOwner могут быть ссылки. Возможно, вы добавили ссылку на компонент, который не был создан внутри метода render компонента, или у вас есть несколько копий загруженного React (подробности: https://gist.github.com/jimfb/4faa6cbfb1ef476bd105).

Вы знаете как справиться с ситуацией? Спасибо заранее, и если вам нужно больше информации, дайте мне знать

+0

Я наткнулся на эту проблему и с материальной-интерфейса, используя ссылку иногда нарушает стиль, вы должны реагировать на браузер браузераИстория и нажимать на URL вручную – Pachu

ответ

1

Это работает для меня:

<FlatButton label="Details" 
      containerElement={<Link to="/coder-details" />} 
      linkButton={true} /> 

См https://github.com/callemall/material-ui/issues/850

+0

Отлично работает! Но как отключить перенаправление, когда кнопка отключена? – JohnnyQ