【发布时间】:2016-10-17 01:03:52
【问题描述】:
我正在努力将<Link/> 组件添加到我的material-ui AppBar
这是我的导航类:
class Navigation extends Component {
constructor(props) {
super(props)
}
render() {
var styles = {
appBar: {
flexWrap: 'wrap'
},
tabs: {
width: '100%'
}
}
return (
<AppBar showMenuIconButton={false} style={styles.appBar}>
<Tabs style={styles.tabs}>
<Tab label='Most popular ideas'/>
<Tab label='Latest ideas' />
<Tab label='My ideas' />
</Tabs>
</AppBar>
)
}
}
标签是可点击的,有流畅的动画,这很酷。但是如何将它们与react-router 及其'<Link/> 组件连接在一起?
我试过像这样添加onChange 监听器:
<Tab
label='My ideas'
onChange={<Link to='/myPath'></Link>}
/>
但是我收到以下错误:
Uncaught Invariant Violation: Expected onChange listener to be a function, instead got type object
如果我尝试将 <Tab/> 组件包装到 <Link/> 组件中,我会收到 <Tabs/> 组件仅接受 <Tab/> 组件的错误。
这也不起作用(没有产生错误,但单击 Tab 不会将我带到路径):
<Tab label='Most popular ideas'>
<Link to='/popular'/>
</Tab>
如何使<Link/> 组件与<Tabs> 和<AppBar> 一起工作?如果这不可能,我可以使用 material-ui 库中的任何其他组件来形成正确的菜单。
【问题讨论】:
标签: javascript reactjs react-router material-ui