【发布时间】:2018-06-15 19:31:14
【问题描述】:
【问题讨论】:
标签: reactjs admin-on-rest
【问题讨论】:
标签: reactjs admin-on-rest
如果您想在侧边栏菜单中隐藏资源,可以省略该资源的 list 属性。
<Resource name="posts" />
【讨论】:
我发现了一种不同的“hacky”方式 您可以在您的 css 中添加以下内容以从菜单中隐藏资源
.MuiDrawer-root a[href^='#/resource-to-exclude'] {
display: none;
}
【讨论】:
如文档中所述,您可以使用 menu 属性将 Menu 组件提供给 Admin 组件。看
https://marmelab.com/react-admin/Admin.html#menu
请注意,这个属性很快就会被appLayout 弃用,但无论如何你仍然会在你的自定义布局中使用这个自定义菜单。
// in src/Menu.js
import React from 'react';
import { connect } from 'react-redux';
import { MenuItemLink, getResources } from 'react-admin';
import { withRouter } from 'react-router-dom';
import Responsive from '../layout/Responsive';
const Menu = ({ resources, onMenuClick, logout }) => (
<div>
{resources
.filter(resource => resource.name !== 'excluded-resource')
.map(resource => (
<MenuItemLink to={`/${resource.name}`} primaryText={resource.name} onClick={onMenuClick} />
))
}
<Responsive
small={logout}
medium={null} // Pass null to render nothing on larger devices
/>
</div>
);
const mapStateToProps = state => ({
// Rerieve all known resources
resources: getResources(state),
});
export default withRouter(connect(mapStateToProps)(Menu));
【讨论】:
App 组件的旁注 menu 道具:github.com/marmelab/react-admin/pull/1881