React-admin-创建子菜单

时间:2018-11-16 10:54:42

标签: reactjs react-admin

如何在react-admin中创建子菜单,因为在休息时我可以在MenuItem Component中使用prop menuItems。 在这种情况下,react-admin是否具有相同的道具?

我尝试创建自己的组件,但是在ListItemText中使用prop primary作为给定列表名称,我的应用始终显示错误Uncaught TypeError:无法读取属性'@global'

谢谢

2 个答案:

答案 0 :(得分:4)

正如react-admin的维护者/开发者所解释的previously,react-admin不提供此功能。
如果需要子菜单,则应按照官方react-admin documentation中给出的说明创建自定义菜单,并实现Material-UI的nested-list逻辑。
根据我提供的链接,这是您子菜单外观的简单示例:

<List component="nav" >
   <ListItem button onClick={this.handleClick}>
      <ListItemIcon>
        <InboxIcon />
      </ListItemIcon>
      <ListItemText inset primary="YOUR-SECTION-TITLE" />
      {this.state.open ? <ExpandLess /> : <ExpandMore />}
   </ListItem>
   <Collapse in={this.state.open} timeout="auto" unmountOnExit>
    <List component="div" disablePadding>
        <MenuItemLink to="/your-api-endpoint-1" primaryText="API-ENDPOINT-1" onClick={this.props.onMenuClick} />
        <MenuItemLink to="/your-api-endpoint-2" primaryText="API-ENDPOINT-2" onClick={this.props.onMenuClick} />
        <MenuItemLink to="/your-api-endpoint-3" primaryText="API-ENDPOINT-3" onClick={this.props.onMenuClick} />
    </List>
  </Collapse>
</List>

答案 1 :(得分:0)

您可以使用以下库 https://github.com/BigBasket/ra-treemenu

或者您可以查看多层菜单组件,它是 React-Admin 企业版软件包的一部分:https://marmelab.com/ra-enterprise/modules/ra-navigation#multilevelmenu-replacing-the-default-menu-by-a-multi-level-one

相关问题